導航:首頁 > 源碼編譯 > 置換密碼演算法實驗報告

置換密碼演算法實驗報告

發布時間:2022-07-13 13:33:28

『壹』 演算法設計分析期末考題目,「密碼學中的演算法」設計實現單表置換密碼,能對英文和數字組成的短文進行加密

很久沒用C了,寫的比較凌亂,呵呵

#include "stdio.h"
#include "conio.h"
#define MAP_SIZE 128
#define CONTENT_SIZE 1000
#define VALID_CHAR_COUNT 62
char map[MAP_SIZE], rmap[MAP_SIZE], keymask[MAP_SIZE];
char input[CONTENT_SIZE], output[CONTENT_SIZE];
void initialize(char *array)
{
int i;
for(i = 0; i < MAP_SIZE; ++i)
{
array[i] = i;
keymask[i] = 0;
}
}
int isvalidchar(char c)
{
/*判斷字元是否字母或數字*/
return c >= '0' && c <= '9' || c >= 'a' && c <= 'z' ||c >= 'A' && c <= 'Z';
}
int convertindex(int i)
{
/*將0~61的數字轉換到轉換表中對應區段的下標
即0~9 => 數字,10~35 => 大寫字母,36~61 => 小寫字母*/
if(i < 10)
{
return i + '0';
}
i-=10;
if(i < 26)
{
return i + 'A';
}
i-=26;
if(i < 26)
{
return i + 'a';
}
}
void gen_map(char *key)
{
/*生成加密用的置換表*/
int index = 0, i;
initialize(map);
while(*key)
{
/*先將密鑰中的字元加入轉換表,並做標記*/
if(keymask[*key] == 0)
{
keymask[*key] = 1;
map[convertindex(index++)] = *key;
}
++key;
}
for(i = 0; i < MAP_SIZE; ++i)
{
/*將密鑰中未出現的字元依次加入轉換表*/
if(keymask[i] == 0 && isvalidchar(i))
{
map[convertindex(index++)] = i;
}
}
}
void gen_rmap(char *key)
{
/*生成解密用的置換表*/
int index = 0, i;
initialize(rmap);
while(*key)
{
/*先將密鑰中的字元加入轉換表,並做標記*/
if(keymask[*key] == 0)
{
keymask[*key] = 1;
rmap[*key] = convertindex(index++);
}
++key;
}
for(i = 0; i < MAP_SIZE; ++i)
{
/*將密鑰中未出現的字元依次加入轉換表*/
if(keymask[i] == 0 && isvalidchar(i))
{
rmap[i] = convertindex(index++);
}
}
}
void encrypt(char *key)
{
int i, len = strlen(input);
gen_map(key);
for(i = 0; i < len; ++i)
{
/*對每一個原文中的字元,從置換表中找到對應字元並加入輸出緩沖*/
output[i] = map[input[i]];
}
output[len] = 0;
}
void decrypt(char *key)
{
int i, len = strlen(input);
gen_rmap(key);
for(i = 0; i < len; ++i)
{
/*對每一個原文中的字元,從置換表中找到對應字元並加入輸出緩沖*/
output[i] = rmap[input[i]];
}
output[len] = 0;
}
int main()
{
char key[CONTENT_SIZE];
int opt;
while(1)
{
do
{
printf("Input 1 to encrypt, 2 to decrypt, or 0 to exit:");
scanf("%d%c", &opt);
}
while(opt != 1 && opt != 2 && opt != 0);
if(opt == 0)
{
return 0;
}
puts("Content:");
gets(input);
puts("Key:");
gets(key);
if(opt == 1)
{
encrypt(key);
}
else
{
decrypt(key);
}
puts(output);
}
}

『貳』 置換密鑰矩陣加密演算法實現與安全性分析

#include<iostream.h>
class SubKey{ //定義子密鑰為一個類
public:
int key[8][6];
}subkey[16]; //定義子密鑰對象數組

class DES{
int encipher_decipher; //判斷加密還是解密
int key_in[8][8]; //用戶原始輸入的64位二進制數
int key_out[8][7]; //除去每行的最後一位校驗位
int c0_d0[8][7]; //存儲經PC-1轉換後的56位數據
int c0[4][7],d0[4][7]; //分別存儲c0,d0
int text[8][8]; //64位明文
int text_ip[8][8]; //經IP轉換過後的明文
int A[4][8],B[4][8]; //A,B分別存儲經IP轉換過後明文的兩部分,便於交換
int temp[8][6]; //存儲經擴展置換後的48位二進制值
int temp1[8][6]; //存儲和子密鑰異或後的結果
int s_result[8][4]; //存儲經S變換後的32位值
int text_p[8][4]; //經P置換後的32位結果
int secret_ip[8][8]; //經逆IP轉換後的密文
public:
void Key_Putting();
void PC_1();
int function(int,int); //異或
void SubKey_Proction();
void IP_Convert();
void f();
void _IP_Convert();
void Out_secret();
};
void DES::Key_Putting() //得到密鑰中對演算法有用的56位
{
cout<<"請輸入64位的密鑰(8行8列且每行都得有奇數個1):\n";
for(int i=0;i<8;i++)
for(int j=0;j<8;j++){
cin>>key_in[i][j];
if(j!=7) key_out[i][j]=key_in[i][j];
}
}
void DES::PC_1() //PC-1置換函數
{
int pc_1[8][7]={ //PC-1
,
,
,
,
,
,
,

};
int i,j;
for(i=0;i<8;i++)
for(j=0;j<7;j++)
c0_d0[i][j]=key_out[ (pc_1[i][j]-1)/8 ][ (pc_1[i][j]-1)%8 ];
}
int DES::function(int a,int b) //模擬二進制數的異或運算,a和b為整型的0和1,返回值為整型的0或1
{
if(a!=b)return 1;
else return 0;
}
void DES::SubKey_Proction() //生成子密鑰
{
int move[16][2]={ //循環左移的位數
1 , 1 , 2 , 1 ,
3 , 2 , 4 , 2 ,
5 , 2 , 6 , 2 ,
7 , 2 , 8 , 2 ,
9 , 1, 10 , 2,
11 , 2, 12 , 2,
13 , 2, 14 , 2,
15 , 2, 16 , 1
};
int pc_2[8][6]={ //PC-2
14, 17 ,11 ,24 , 1 , 5,
3 ,28 ,15 , 6 ,21 ,10,
23, 19, 12, 4, 26, 8,
16, 7, 27, 20 ,13 , 2,
41, 52, 31, 37, 47, 55,
30, 40, 51, 45, 33, 48,
44, 49, 39, 56, 34, 53,
46, 42, 50, 36, 29, 32
};
for(int i=0;i<16;i++) //生成子密鑰
{
int j,k;
int a[2],b[2];
int bb[28],cc[28];
for(j=0;j<4;j++)
for(k=0;k<7;k++)
c0[j][k]=c0_d0[j][k];
for(j=4;j<8;j++)
for(k=0;k<7;k++)
d0[j-4][k]=c0_d0[j][k];
for(j=0;j<4;j++)
for(k=0;k<7;k++){
bb[7*j+k]=c0[j][k];
cc[7*j+k]=d0[j][k];
}
for(j=0;j<move[i][1];j++){
a[j]=bb[j];
b[j]=cc[j];
}
for(j=0;j<28-move[i][1];j++){
bb[j]=bb[j+1];
cc[j]=cc[j+1];
}
for(j=0;j<move[i][1];j++){
bb[27-j]=a[j];
cc[27-j]=b[j];
}
for(j=0;j<28;j++){
c0[j/7][j%7]=bb[j];
d0[j/7][j%7]=cc[j];
}
for(j=0;j<4;j++) //L123--L128是把c0,d0合並成c0_d0
for(k=0;k<7;k++)
c0_d0[j][k]=c0[j][k];
for(j=4;j<8;j++)
for(k=0;k<7;k++)
c0_d0[j][k]=d0[j-4][k];
for(j=0;j<8;j++) //對Ci,Di進行PC-2置換
for(k=0;k<6;k++)
subkey[i].key[j][k]=c0_d0[ (pc_2[j][k]-1)/7 ][ (pc_2[j][k]-1)%7 ];
}
}
void DES::IP_Convert()
{
int IP[8][8]={ //初始置換IP矩陣
58, 50, 42, 34, 26, 18, 10, 2,
60, 52, 44, 36, 28, 20, 12, 4,
62, 54, 46, 38, 30, 22, 14, 6,
64, 56, 48, 40, 32, 24, 16, 8,
57, 49, 41, 33, 25, 17, 9, 1,
59, 51, 43, 35, 27, 19, 11, 3,
61, 53, 45, 37, 29, 21, 13, 5,
63, 55, 47, 39, 31, 23, 15, 7
};
cout<<"你好,你要加密還是解密?加密請按1號鍵(輸入1),解密請按2號鍵,並確定."<<'\n';
cin>>encipher_decipher;
char * s;
if(encipher_decipher==1) s="明文";
else s="密文";
cout<<"請輸入64位"<<s<<"(二進制):\n";
int i,j;
for(i=0;i<8;i++)
for(j=0;j<8;j++)
cin>>text[i][j];
for(i=0;i<8;i++) //進行IP變換
for(j=0;j<8;j++)
text_ip[i][j]=text[ (IP[i][j]-1)/8 ][ (IP[i][j]-1)%8 ];
}

『叄』 頁面置換實驗報告的程序結構怎麼寫

資料庫課程設計「資料庫課程設計」是資料庫系統及應用課程的後續實驗課,是進一步鞏固學生的資料庫知識,加強學生的實際動手能力和提高學生綜合素質。一、課程設計目的課程設計為學生提供了一個既動手又動腦,獨立實踐的機會,將課本上的理論知識和實際有機的結合起來,鍛煉學生的分析解決實際問題的能力。提高學生適應實際,實踐編程的能力。課程設計的目的:1.加深對資料庫原理、程序設計語言的理論知識的理解和應用水平;2.在理論和實驗教學基礎上進一步鞏固已學基本理論及應用知識並加以綜合提高;3.學會將知識應用於實際的方法,提高分析和解決問題的能力,增強動手能力;4.為畢業設計和以後工作打下必要基礎。二、課程設計要求運用資料庫原理的基本理論與應用知識,在微機RDBMS(SQLServer)的環境上建立一個資料庫應用系統。要求把現實世界的事物及事物之間的復雜關系抽象為信息世界的實體及實體之間聯系的信息模型,再轉換為機器世界的數據模型和數據文件,並對數據文件實施檢索、更新和控制等操作。1.用E-R圖設計選定題目的信息模型;2.設計相應的關系模型,確定資料庫結構;3.分析關系模式各屬於第幾範式,闡明理由;4.設計應用系統的系統結構圖,確定系統功能;5.通過設計關系的主碼約束、外碼約束和使用CHECK實現完整性控制;6.為參照關系設計插入、刪除、修改觸發器;7.實現應用程序設計、編程、優化功能;8.對系統的各個應用程序進行集成和調試,進一步優化系統功能、改善系統用戶界面完成實驗內容所指定的各項要求;9.分析遇到的問題,總結並寫出課程設計報告;10.自我評價三、實驗環境開發環境VC++、C#、ASP或JAVA;ODBC/JDBC;資料庫SQLServer四、上機實現內容1.創建資料庫的結構2.創建各基本表的結構3.編制系統各功能模塊,完成數據的管理(增、刪、改)及統計查詢。對於程序運行界面不做考核的重點。五、課程設計考核1.對學生到實驗室的情況進行不定時統計;2.出勤率+課程設計報告+課程設計所開發的應用系統+其他(上機抽查和提問)=綜合評定成績。3.課程設計結束時請將下列資料上交:(1)課程設計報告;(2)所開發的應用系統的源程序、安裝和使用說明;(3)將(1)(2)中的資料壓縮成一個壓縮包,壓縮包文件的命名規則:班級+學號(末2位)+姓名(例如:計科090101王鵬曉);(4)班長將本班每人的(3)中的壓縮包刻錄成光碟連同列印的課程設計報告收齊,交給任課教師。附錄﹑課程設計題目題目1:課程設計選題管理系統(1,24)包括三大模塊:課程設計題目維護與查詢:題目的添加、修改和刪除;按題目類型、名稱和關鍵字查詢以及已選與未選題目的查詢;學生信息維護與查詢;學生選題維護與管理:學生選題及查詢;具體功能細化:前台學生選題:學生上網登錄系統進行選題;前台教師出題:教師添加、修改和刪除題目;教師確認學生的選題;後台管理出題和選題添加用戶及許可權題目2:書店管理系統(23)包括四大模塊:售書(圖書銷售管理及銷售統計,查詢)進書(通過書目,向發行商下定單訂購圖書)庫存(圖書庫存,統計)相關查詢題目3:圖書館管理系統(11)包括四大模塊:圖書的查詢借書還書圖書的預約題目4:庫存管理系統(8)包括四大模塊:商品目錄建立商品入庫管理商品出庫管理商品庫存查詢題目5:工資管理系統(1人)41包括四大模塊:系統數據初始化員工基本信息數據的輸入、修改、刪除;員工個人信息及工資表的查詢;員工工資的計算;參考數據如下:員工基本狀況:包括員工號、員工姓名、性別、所在部門、工資級別、工資等級等。工資級別和工資金額:包括工資等級、工資額。企業部門及工作崗位信息:包括部門名稱、工作崗位名稱、工作崗位工資等。工齡和工資金額:包括工齡及對應工資額。公司福利表:包括福利名稱、福利值。工資信息:包括員工號、員工姓名、員工基礎工資、員工崗位工資、員工工齡工資、公司福利、員工實得工資。題目6:酒店客房管理系統(1人)14,26包括四大模塊:前台操作:包括開房登記、退房結賬和房狀態查看預訂管理:包括預訂房間、預訂入住和解除預訂信息查詢:包括在住客人列表、預訂客人列表和歷史客人列表報表統計:包括開房記錄統計、退房結賬和預訂房間統計員工基本信息數據的輸入、修改、刪除;參考數據如下:住店管理:客人姓名、證件號碼、房號、入住時期、預計離開日期、結賬離開日期、應付金額客人信息:姓名、性別、證件類型、證件號碼、聯系電話房間信息:房號、房類型、價格、押金、房狀態預訂房間客人姓名、性別、房類型、房號、價格、證件類型、證件號碼、聯系電話、入住日期、預計離開日期、歷史信息題目7:旅行社管理信息系統(1人)3包括如下模塊:旅遊團隊、團隊團員及旅遊路線相關信息的輸入旅遊團隊、團隊團員及旅遊路線相關信息的維護(修改、瀏覽、刪除和撤銷)旅遊團隊管理信息的查詢(如按團隊編號)團隊團員基本情況的查詢(可選多種方式)旅遊路線相關信息的查詢(如按線路編號)旅遊路線排行榜發布。數據備份,更改密碼。參考數據如下:團員信息表(路線編號,團隊編號,團員編號,姓名,性別,電話,通信地址,身份證號碼,團費交否,備注)線路信息表(路線名稱,團費,簡介,圖形,路線編號)團隊信息表(團隊編號,路線編號,團員人數,出發日期,返程日期)旅遊團隊信息表(團隊編號,團隊負責人,團員人數,建團時間,是否出發,團費,盈虧)密碼信息(操作員,密碼)題目8:報刊訂閱管理系統(1人)25,35包括如下模塊:登錄功能:登錄統為身份驗證登錄。分為管理員登錄和一般用戶登錄。分別通過不同的用戶名和密碼進入報刊訂閱管理界面,新的用戶需要注冊。錄入新信息功能:對於管理員,包括新用戶信息和新報刊信息的錄入功能,信息一旦提交就存入到後台資料庫中;普通用戶自行注冊進行可以修改個人信息。訂閱功能:用戶可以訂閱報刊,系統自動計算所需金額,並顯示在界面上;管理員不可訂閱報刊,必須以用戶身份訂閱報刊。查詢功能:用戶可以查詢並顯示自己所訂閱的信息;管理員可以按人員、報刊、部門分類查詢。查詢出的信息顯示在界面上,並且可以預覽和列印出結果。統計功能:管理員可以按用戶、部門、報刊統計報刊的銷售情況,並對一些重要的訂閱信息進行統計;普通用戶可以統計出自己的訂閱情況,並且可以預覽和列印出結果。系統維護功能:數據的安全管理,主要是依靠管理員對資料庫里的信息進行備份和恢復,資料庫備份後,如果出了什麼意外可以恢復資料庫到當時備份的狀態,這提高了系統和數據的安全性,有利於系統的維護參考數據如下:管理員表(Adminuser):管理員名、密碼。部門表(Department):部門號,部門名。用戶表(Users):用戶賬號、密碼、真實姓名、身份證號、聯系電話,聯系地址,部門號(和部門表有關)等。報刊類別表(NewspaperClass):分類編號、分類名稱。報刊信息表(Newspaper):報刊代號、報刊名稱、出版報社、出版周期、季度報價、內容介紹、分類編號(和報刊類別表有關)等。訂單表(Order):訂單編號、用戶編號、報刊代號、訂閱份數、訂閱月數等。題目9:計算機等級考試教務管理系統(2人)32包括四大模塊:用戶設置:對考點代碼,考點名稱進行設置,設置用戶與密碼;系統復位:即清除上一次考試數據(在之前存入歷史)報名管理:報各庫錄入(姓名不能不空,之間不能有空格)增加、刪除、修改、瀏覽准考證管理:准考證生成規則:xxx+yy+zz+kk,其中XXX為考點代碼;YY為語言代碼,XX為考場號,KK為座位號同一級別、語言應根據報名初始庫信息按隨機數生成准考證,同一考點最多可有99*30=2970名考生;如已生成准考證號,再重新生成准考證號,應該給予提示。准考證列印考務管理:考生信息查詢、瀏覽、列印成績管理:成績數據錄入、接收成績合成(總成績=筆試成績*0.6+上機成績*0.4),按大於或等於60合格參考數據如下:初始報名表(准考證號(為空),報名號(主鍵),級別+語言種類(外鍵),姓名,性別,出生年份,民族,身份證號,聯系地址,聯系電話,照片,備注,參加培訓)含准考證號的報名表(准考證號(為主鍵),報名號,級別+語言種類(外鍵),姓名,性別,出生年份,民族,身份證號,聯系地址,聯系電話,照片,備注,參加培訓)成績表(准考證號,筆試成績,上機成績,總成績)級別語言代碼表(級別語言代碼,級別+語言)用戶信息表(考點代碼,考點名稱,用戶名,密碼)題目10:人事管理系統(1人)21包括四大模塊:登錄管理:包括操作員管理,口令設置,許可權管理人員管理:包括人事數據維護、人事信息查詢和人事信息統計工資管理部門管理:包括部門表,職稱表和年份表查詢及報表列印參考數據如下:人事表(編號,姓名,性別,出生日期,工作日期,部門代碼,職稱,婚否,簡歷,相片)工資表(基本工資,崗位津貼,獎勵,應發工資,水電,保險,實發工資)部門表(代碼,部門名稱)職稱表(職稱代碼,職稱名稱)年份表(年份代碼,年份名稱)操作員表(操作員代碼,操作員姓名,口令,部門,電話)系統日誌表(操作員代號,操作員姓名,登錄時間,離開時間)題目11:商品銷售管理系統(1人)19包括四大模塊:用戶登錄基本信息管理:包括銷售情況、商品信息、庫存表、員工表等信息的錄入、瀏覽、修改、撤銷、刪除和查詢等商品銷售管理:包括商品售出、退回和入庫盤點:包括庫存檔點、當日銷售盤點參考數據如下:商品信息表(商品編號,商品名稱,品牌,型號,銷售單價)商品編號=類別代碼(1位)+品名代碼(1位)+品牌代碼(2位)+型號代碼(2位)銷售情況表(成交編號,商品編號,銷售數量,總金額,銷售日期,員工編號)庫存表(商品編號,供貨商編號,進貨日期,進貨價,庫存數量)員工表(員工編號,員工姓名,性別,基本工資,職務,密碼)供貨商表(供貨商編號,供貨商名稱,所在地,聯系電話)員工資料表(員工編號,員工姓名,是否黨員,簡歷,照片)題目12:學生成績管理系統(1人)29包括四大模塊:基本數據管理:包括院系管理,專業管理(設置院系下面的專業),班級管理(設置專業下面的班級),課程管理(設置相應專業下面的課程)學生信息管理:包括基本信息錄入、基本信息修改學生成績管理:包括學生成績錄入、學生成績修改信息查詢:包括基本信息查詢、成績信息查詢、學校人數統計系統管理:用戶管理、數據備份和系統幫助參考數據如下:院系信息(院系代碼,院系名稱)院系專業信息(班級、院系代碼,專業)學生基本信息(班號,學號,姓名,性別,出生年月,籍貫,政治面貌,身份證號,入學年月,家庭地址,郵政編碼,圖片信息,備注)學生成績表(學號,課號,成績,備注)課程表(課號,課程名稱,學期,備注)班表(班號,班級名稱)用戶信息表(用戶名,密碼,用戶標識)題目13:火車售票管理系統(4人)36包括四大模塊:售票管理訂票管理信息查詢系統維護參考數據如下:車次信息表(車次,始發站,終點站,發車時間,到達時間)訂票信息表(車次,座位號,發車時期,發車時間,座位等級,票價)車次座位等級分配及座位佔用表(車次,座位號,座位等級,票價,佔用標志)用戶信息表(用戶名,密碼,用戶標識)題目14:小型物業管理系統(1人)包括四大模塊:房源管理:對原始資料的錄入、修改、查詢和刷新。一般用戶可以查詢與房間有關的統計資料;物業主管可其進行增、刪、改、插等操作租房管理:對房產出租,退租以及租房面積調整。其中物業主管可對其進行房租金額計算和收款操作,一般用戶對其查詢水電處理:根據租房資料,結合當月水、電量進行分攤,完成應收水電費。其中物業主管對其進行計算,其他查詢交款處理:提供收款和發票列印以及交款數據查詢查詢處理:對租房資料、交款資料,發票資料進行查詢參考數據如下:房源資料(名稱,面積,月租,物業,倉庫)租房資料(名稱,面積,單位,月租,物業,押金,倉庫)水電資料(單位,電量,水量,電費,水費)交費資料(收費項目,應收日期,應收金額,已收金額,未收金額,本次收款)發票資料(單位,房租,電費,水費,物業)許可權資料(用戶,密碼,房源管理,租房管理,水電管理,交費管理,發票管理,系統維護)其中系統管理員,有權進行系統維護;單位內部物業主管,有權進行物業資源調配、單元出租,退租和收款開票操作;物業管理員,有權進行水電處理和收款處理等操行;租戶代表,有權進行種類費的查詢操作題目15:機房收費管理系統(1人)7,34包括四大模塊:登錄模塊上機管理模塊說明:上機登記時,余額不足3元或卡處於掛失狀態,則拒絕登記每位同學的一次上機形成一條記錄,每36S遍歷一次上機記錄表,對表中所有正上機欄位為TRUE的記錄的上機用時增加36S,同時從上機卡表的余額減少上機卡管理模塊充值掛失模塊查找統計模塊:統計某天上機的總時數、每次上機的平均時數和機房的收入;某學生上機的次數、上機總時數、每次上機平均時間;掛失和查詢余參考數據如下:上機卡(卡號,姓名,專業班級,余額,狀態)狀態的取值有:正常(能自費上機)掛失上機記錄(卡號,上機日期,開始時間,上機用時,正上機,管理號代碼),上機用時記錄學生上機時間(S);正上機是一個布爾型,為True表示正上機,每36秒刷新其上機用時並扣除上機費用,為False表示上機結束。上機記錄表永久保存,用於事後查詢和統計管理員(代碼,姓名,口令)題目16:高校葯房管理(1人)31包括四大模塊:基礎數據處理:包括醫生和葯劑師名單的錄入,修改,刪除及查詢營業數據處理:包括葯品進貨上櫃,處理劃價,配葯,櫃存葯品查詢,處方綜合查詢,交接班結轉清。參考數據如下:葯品信息表(貨號,貨名,計量單位,進貨數量,進貨單價,出售單價,進貨日期,收貨人和供應商)處方信息(編號,患者姓名,醫生姓名,葯劑師姓名,處方日期,配葯日期)處方葯品信息(處方編號,葯品貨號,計量單位,配葯數量,銷售單價,已配葯否)醫生名單和葯劑師名單表(姓名)題目17:考勤管理系統(2人)40包括四大模塊:記錄每個員工每天所有進入公司的時刻和離開公司的時刻。每天結束時自動統計當天的工作時間每天結束時自動統計當天遲到或早退的次數。對於彈性工作制,每天結束時自動統計當月的工時,並自動算出當月欠缺或富餘的時間每個月末統計該月的工作時間判斷是束足夠每個月末統計該月的工作天數並判斷是否足夠管理人員查詢並修改工作時間(特殊情況下修改)管理人員賬戶管理(如設置密碼等)管理人員設定早退及遲到的條件,每個月的工作時間管理人員設定每個月的工作日期及放假日期參考數據如下:員工信息(工號,姓名,年齡,入職時間,職位,性別,密碼)配置信息(上班時間小時,上班時間分鍾,下班時間小時,下班時間分鍾,每天工作時間)每月統計數據表(工號,姓名,剩餘的時間,遲到的次數,早退的次數,工作天數)每天統計信息表(工號,姓名,小時,分鍾,動作,時間)其中動作指的時入或離開公司題目18:單位房產管理系統(2人)33,10包括四大模塊:系統模塊:完成資料庫維護、系統關閉功能物業費用模塊:完成本月物業的計費、歷史資料查詢和財務部門介面傳送數據、物業相關費用單價設置房屋資源模塊:對房屋資源進行添加、列表顯示、查詢職工信息模塊:對職工進行添加、列表顯示、查詢以及相應部門、職務進行維護幫助模塊:對用戶使用本系統提供在線幫助參考數據如下:職工(編號,姓名,性別,參加工作時間,行政職務,專業技術職務,評上最高行政職務時間,評上最高專業技術職務時間,雙職工姓名,現居住房號,檔案號,房產證號,所在部門編號,是否為戶主)部門(編號,部門名稱)住房級別表(編號,級別,住房標准,控制標准,級別分類)房產情況(編號,房號,使用面積,現居住人id,上一個居住人id,最早居住人ID,陽檯面積)物業費用(編號,房號,水基數,水現在值,電基數,電現在值,燃氣基數,燃氣現在值,當前年份,當前月份)價格標准(編號,水單價,電單價,燃氣單價)題目19:標准化考試系統(2人)15,39功能要求:設計一個簡單的標准化考試系統,僅有單項選擇題、多項選擇題和判斷題功能即可。包括四大模塊:題庫管理:實現試題的錄入、修改、刪除功能;考試子系統:能夠實現考生做題、結果自動存入到資料庫中,有時間提示;選擇身份(登錄)功能:系統能夠記錄考生輸入的登錄信息及交卷信息;自動評分功能:考生交卷後能自動評分;查看成績功能:能夠查詢考生相關信息(包含成績等)。參考數據如下:其它可供選擇的題目:網上教務評教系統130,127,13316學生日常行為評分管理系統232,110,230網上鮮花店38基於BS結構的工藝品銷售系統12基於BS結構的校園二手物品交易網站37大學生就業管理系統201,208,234題庫及試卷管理系統資料庫原理及應用課程設計報告題目:課程設計選題管理系統所在學院:班級:學號:姓名:李四指導教師:2011年12月日目錄一、概述二、需求分析三、概念設計四、邏輯設計五、系統實現六、小結一、概述

『肆』 求一個操作系統頁面置換演算法先進先出的實驗報告

一選擇
1.B 2.c 3。 D 4B 5B
二填空
1,最優;先進先出;最近最久未使用
2. 13;15;
3. 123456721;123567421
4.段;段;頁;頁;三;二
三,問答
1.答:三個頁面的物理起始地址分別是:4k,6K,12K,
2500= 2K+452,所以在第二個邏輯頁面6K的起始地址,實際地址是6K+452;
2.LRU:裝入順序:2 3 1 5 4 3 2
換出順序: 3 1 2 4 缺頁次數7次
FIFO:裝入順序:2 3 1 5 2 4 3 5 2
換出順序: 2 3 1 5 2 4 缺頁次數9次
時鍾:裝入順序:2 3 1 5 2 4 3 2
換出順序: 2 3 1 2 4 缺頁次數8次
時鍾演算法性能處於中間,優於FiFo,差於LRU,但由於LRU演算法的硬體實現比較麻煩,所以時鍾演算法問兼顧了效率和硬體實現

『伍』 比較替代密碼技術和置換密碼技術的不同的舉例

置換是在不丟失信息的前提下對明文中的元素進行重新排列
所謂置換密碼,就是把明文中的字母或數字重新排列,字母或數字本身不變,但其位置發生了改變,這樣所編成的密碼稱為置換密碼。舉個例子,例如:
明文:zhe shi huan mi ma
密文:ami mna uhi hzih se hz

提高密碼強度的一種方法,就是採取多個密文字母表,使得明文中字母可以有多個字母來代替,構成單對多映射。我們構造d個密文字母表:
B1={bj0,bj1……,bjn-1} j=0,1,……,d-1
同樣定義d個映射:
fj>bj
fj(ai)=bji
最後設明文空間M=(m0,m1,……,md-1,md,……) 密文空間C=(f0(m0),f1(m1),……,fd-1(md=1),fd(md),……)
由上可知,代替密碼的密鑰就是這組應設函數或密文字母表。

『陸』 置換密碼中的明文

置換密碼演算法的原理是不改變明文字元,只將字元在明文中的排列順序改變,從而實現明文信息的加密。置換密碼也叫換位密碼。試編程實現矩陣換位密碼。它的加密方法是將明文中的字母按照給定的順序安排在一個矩陣中,然後用根據密鑰提供的順序重新組合矩陣中的字母,形成密文。你說的這個密文我不太懂,你最好是下一個針對些明文的軟體.這有個網些你了解一下也好." http://www.pudn.com/downloads157/sourcecode/crypt/detail700963.html"

『柒』 用C語言或者其他語言編寫替代密碼和置換密碼

給你,自己再稍微改造一下吧:
#include "stdio.h"
#include "conio.h"

main()
{
int k,i=0;
char a[100],b[100];
printf("qing shu ru ni de mi wen \n");
gets(a);
printf("qing shu ru mi shi \n");
scanf("%d",&k);
printf("\n");
do{
b[i]=(char)(a[i]+k);
if(b[i]>122){
b[i]=(char)(b[i]-26);
}
i++;
}while(a[i]!='\0');
puts(b);
getch();
}

『捌』 置換密碼的介紹

置換只不過是一個簡單的換位,每個置換都可以用一個置換矩陣Ek來表示。每個置換都有一個與之對應的逆置換Dk。

閱讀全文

與置換密碼演算法實驗報告相關的資料

熱點內容
噴油螺桿製冷壓縮機 瀏覽:577
python員工信息登記表 瀏覽:375
高中美術pdf 瀏覽:159
java實現排列 瀏覽:511
javavector的用法 瀏覽:980
osi實現加密的三層 瀏覽:230
大眾寶來原廠中控如何安裝app 瀏覽:912
linux內核根文件系統 瀏覽:241
3d的命令面板不見了 瀏覽:524
武漢理工大學伺服器ip地址 瀏覽:147
亞馬遜雲伺服器登錄 瀏覽:523
安卓手機如何進行文件處理 瀏覽:70
mysql執行系統命令 瀏覽:929
php支持curlhttps 瀏覽:142
新預演算法責任 瀏覽:443
伺服器如何處理5萬人同時在線 瀏覽:249
哈夫曼編碼數據壓縮 瀏覽:424
鎖定伺服器是什麼意思 瀏覽:383
場景檢測演算法 瀏覽:616
解壓手機軟體觸屏 瀏覽:348