试题三(15分)
阅读下列说明,回答问题1至问题4。
【说明】
某银行开发了一套手机银行App,需要对用户敏感数据进行保护。安全架构师在设计中采用了以下加密方案:
1. 用户在App端输入账户密码后,App使用SM4对密码进行加密(密钥为K1,K1以明文形式预置在App程序内部)。
2. 加密后的密码通过HTTPS协议传输到银行后台服务器。
3. 银行后台服务器接收到密文后,使用SM4密钥K1解密得到原始密码,然后与数据库中的密码Hash值进行比对验证。
4. 同时,App对用户的每一笔交易记录生成一个MD5哈希值,用于完整性校验。
【问题3】(4分)方案第2步使用HTTPS协议传输数据。请回答:
(1)HTTPS在HTTP的基础上加入了SSL协议。以下关于HTTPS与HTTP区别的描述中,错误的是( )(2分)
A. HTTP默认使用80端口,HTTPS默认使用443端口
B. HTTPS需要向CA申请数字证书,HTTP不需要
C. HTTP信息明文传输,HTTPS对传输数据进行加密
D. HTTPS取消了HTTP的身份认证功能,安全性反而更低
参考答案(1)**D**
HTTPS不仅没有取消身份认证,反而通过数字证书增加了服务器身份认证功能,安全性更高。
(2)银行后续计划对交易报文增加数字签名功能,按国密要求选用SM2椭圆曲线算法实现。签名过程中,发送方应使用( )对交易报文的消息摘要进行处理,形成数字签名(2分)
A. 发送方自己的私钥
B. 发送方自己的公钥
C. 接收方的私钥
D. 接收方的公钥
(2)**A**
数字签名过程:发送方使用自己的私钥对消息摘要进行加密,形成数字签名。接收方用发送方的公钥验证签名。