公私钥加解密问题汇总

2023-11-05 03:32
文章标签 问题 汇总 加解密 公私

本文主要是介绍公私钥加解密问题汇总,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  1. A is sending a message to B (using public key infrastructure). What kind of key is used for encryption (for the purpose of confidentiality)?
    B’s public key.
    加密用接收方公钥

  2. A is sending a message to B (using public key infrastructure). What kind of key is used for encryption (for the purpose of authentication)?
    A’s private key.
    验证用发送方私钥

  3. Which question (#1 or #2) is related to digital signature? Explain in detail.
    #2, true party’s public key to authenticate.

  4. A is sending a message to B using a symmetric key encryption. Explain the mechanism including key sharing.
    A will use B’s public to encrypt the symmetric key, B can use its own private key to decrypt it.

    4-1. Explain what digital envelope is in Question 4.
    Digital envelope is the method to use symmetric key encryption to encrypt document but public key encryption to encrypt and send symmetric key, just like to put a key into an envelope.

  5. How do you verify digital signature? Especially what information do you need for verification? Discuss it in detail
    The receiver gets the massage and he/she will decrypt first and hash the plaintext with the same hashing algorithm the sender used; and then decrypt the DS with the true party’s public key. If the 2 match, the message is authenticated.
    Third party?

  6. How can hashing be used to achieve integrity? Explain with an example.
    Integrity means that the message cannot be changed or, if it is changed, that this change will be detected. The hashing is using a method to calculate and it will generate shorter length message which cannot be reversed, if the both sides can use the same hashing method generate the same result, that means the both sides achieve the integrity.

  7. Can you use hashing for authentication? Why or why not. Explain in detail.
    Yes, the MS-CHAP Challenge-Response Authentication Protocol using hashing to authenticate.

  8. A is sending a message to B. A and B agree that digital signature(Q2), digital certificate(Q5), and digital envelope(Q4) need to be used. Describe the detailed mechanism to use those three notions in their communication.
    整个传递过程是:
    (1)发送方A先形成DS(MD+发送方私钥加密),将DS attach到 plaintext上,形成 DS+plaintext,然后在用symmetric key加密;
    (2)发送给接收方B;
    (3)B接收到信息,先用symmetric key解密,然后再验证DS。即,先用true party的public key解密。其实这里的key来自于第三方的CA,而CA也相当于一套公私钥加解密机制,但是是早就install在你的OS里面了,这个部分就叫做数字证书。然后解密得到MD,再自己hash plaintext得到一个MD,比较得出完整性和验证发送者。
    这里写图片描述
    这里写图片描述
    这里写图片描述
    这里写图片描述

  9. Message-by-Message Authentication?
    不必每一个message都验证,可以在上层控制,类似于流机制

  10. HMAC
    这里写图片描述
    这里写图片描述
    这里写图片描述

  11. symmetric key加密发送的时候,因为已经用了PKI机制,不用再加DS。

这篇关于公私钥加解密问题汇总的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/347143

相关文章

MybatisGenerator文件生成不出对应文件的问题

《MybatisGenerator文件生成不出对应文件的问题》本文介绍了使用MybatisGenerator生成文件时遇到的问题及解决方法,主要步骤包括检查目标表是否存在、是否能连接到数据库、配置生成... 目录MyBATisGenerator 文件生成不出对应文件先在项目结构里引入“targetProje

C#使用HttpClient进行Post请求出现超时问题的解决及优化

《C#使用HttpClient进行Post请求出现超时问题的解决及优化》最近我的控制台程序发现有时候总是出现请求超时等问题,通常好几分钟最多只有3-4个请求,在使用apipost发现并发10个5分钟也... 目录优化结论单例HttpClient连接池耗尽和并发并发异步最终优化后优化结论我直接上优化结论吧,

Java内存泄漏问题的排查、优化与最佳实践

《Java内存泄漏问题的排查、优化与最佳实践》在Java开发中,内存泄漏是一个常见且令人头疼的问题,内存泄漏指的是程序在运行过程中,已经不再使用的对象没有被及时释放,从而导致内存占用不断增加,最终... 目录引言1. 什么是内存泄漏?常见的内存泄漏情况2. 如何排查 Java 中的内存泄漏?2.1 使用 J

numpy求解线性代数相关问题

《numpy求解线性代数相关问题》本文主要介绍了numpy求解线性代数相关问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 在numpy中有numpy.array类型和numpy.mat类型,前者是数组类型,后者是矩阵类型。数组

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

Oracle数据库使用 listagg去重删除重复数据的方法汇总

《Oracle数据库使用listagg去重删除重复数据的方法汇总》文章介绍了在Oracle数据库中使用LISTAGG和XMLAGG函数进行字符串聚合并去重的方法,包括去重聚合、使用XML解析和CLO... 目录案例表第一种:使用wm_concat() + distinct去重聚合第二种:使用listagg,

Redis缓存问题与缓存更新机制详解

《Redis缓存问题与缓存更新机制详解》本文主要介绍了缓存问题及其解决方案,包括缓存穿透、缓存击穿、缓存雪崩等问题的成因以及相应的预防和解决方法,同时,还详细探讨了缓存更新机制,包括不同情况下的缓存更... 目录一、缓存问题1.1 缓存穿透1.1.1 问题来源1.1.2 解决方案1.2 缓存击穿1.2.1

vue解决子组件样式覆盖问题scoped deep

《vue解决子组件样式覆盖问题scopeddeep》文章主要介绍了在Vue项目中处理全局样式和局部样式的方法,包括使用scoped属性和深度选择器(/deep/)来覆盖子组件的样式,作者建议所有组件... 目录前言scoped分析deep分析使用总结所有组件必须加scoped父组件覆盖子组件使用deep前言

解决Cron定时任务中Pytest脚本无法发送邮件的问题

《解决Cron定时任务中Pytest脚本无法发送邮件的问题》文章探讨解决在Cron定时任务中运行Pytest脚本时邮件发送失败的问题,先优化环境变量,再检查Pytest邮件配置,接着配置文件确保SMT... 目录引言1. 环境变量优化:确保Cron任务可以正确执行解决方案:1.1. 创建一个脚本1.2. 修

Python 标准库time时间的访问和转换问题小结

《Python标准库time时间的访问和转换问题小结》time模块为Python提供了处理时间和日期的多种功能,适用于多种与时间相关的场景,包括获取当前时间、格式化时间、暂停程序执行、计算程序运行时... 目录模块介绍使用场景主要类主要函数 - time()- sleep()- localtime()- g