欢迎来到天天文库
浏览记录
ID:34761533
大小:179.18 KB
页数:3页
时间:2019-03-10
《实验四:oracle11g数据库加密及代码混淆》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验四:Oracle11g数据库加密及代码混淆实验学时:2实验类型:综合实验要求:必修一、实验目的该实验主要是使学生学会在数据库中如何进行加密、解密以及计算hash、MAC。通过该实验的学习,是学生深入了解数据库中数据加密的目的、准则;掌握数据库加密、解密算法以及密钥的产生和存储,hash算法以及MAC。二、实验内容Oracle11g数据库加、解密,hash以及MAC值计算;oracle中的代码混淆三、实验原理、方法和手段1.数据库加密、解密(保证机密性)。利用oracle11g中PL/SQL包DBM
2、S_CRYPTO进行数据的加、解密。利用这两个函数dbms_crypto.Encrypt和dbms_crypto.DecryptlDataEncryptionStandard(DES),TripleDES(3DES,2-key)lAdvancedEncryptionStandard(AES)(128、192、256)2.hash和MAC值的计算(保证完整性)利用oracle11g中PL/SQL包DBMS_CRYPTO进行。采用DBMS_CRYPTO.Hash和DBMS_CRYPTO.Mac进行。lSH
3、A-1CryptographicHashlSHA-1MessageAuthenticationCode(MAC)(UsageofSHA-1ismoresecurethanMD5)3.oracle中代码混淆参见oracle官方文档《PL/SQLUser'sGuideandReference》,利用wraputility对代码进行混淆。四、实验组织运行要求根据本实验的特点,采用以学生自主训练为主的开放模式组织教学。五、实验条件硬件:CPU:2.4G内存:1G硬盘:80G软件:Windows2003、Win
4、XP、Win7及以上操作系统,Oracle11g数据库六、实验步骤1.请写一段PL/SQL代码实现在oracle中加密自己的学号,并将密文输出。请使用DBMS_CRYPTO中:ENCRYPT_AES192、CHAIN_ECB和PAD_PKCS5,并使用RANDOMBYTES函数产生密钥。2.请写一段PL/SQL代码实现在oracle中计算出自己姓名全拼的MAC(SHA-1)并输出。3.PleaseusewraputilitytoobfuscatethebelowcodePL/SQLcodeandthe
5、firstPL/SQLcodeyouencryptyourstudentIDinoracleandgivetheresults.Thenpleasecompareandanalyzetheabovetworesults.Youcanrefertothedocof《PL/SQLUser'sGuideandReference》.createorreplacefunctionCHECK_SID(s_idinnumber)returnnumberasnumnumber;cursorget_numisselec
6、tcount(sid)fromswheresid=s_id;beginopenget_num;fetchget_numintonum;returnnum;endCHECK_SID;七、思考题1.什么是代码混淆?代码混淆的目的。2.数据库中加密的目的和原则是什么?3.在oracle中TDE的工作原理是什么?
此文档下载收益归作者所有