RSA学习1
对PEM文件(以前是一个邮件编码)进行编码,得到RSA公钥.国密的RSA标准,一般是tlv(tag-version)格式的.
明文hash后的数据进行BER编码再进行加密.-签名
对于RSA的结构,全部数据可以叫私钥,其中取N值和E值可以叫公钥.以下为RSA的结构,
algId 算法Id ,代表目前算法为RSA算法,如可取10000,即为65536
keyBitLen 密钥位长,1024或者2048
N值,合数模长modulus,一般为128,不过考虑兼容2048字节内容,会申请256个空间,当使用128字节的时候,填充到后面的位置.
E值,公开幂,可以定义4个字节,一般只有3个字节内容,从1到3,0字节置空
D值,私钥D值,模长,其余为一半模长
P值
Q值
DP值
DQ值
QP值
raw:
30820258020101028180bdbd35558e8594c9a52ad3a5adb1fb823ca2b5533d6f426a633c0c79dfb02a3d29f14837dcae1540bb3338306903477659daa46a6cb6b00f03ed4353c682f2e8f7baea6e95820daed6b913b1634c424af5e167d9cf13ea22fb1c5431bc3699ed2661f061cacf128b8a402692c236da6e5cfe82c40ef7e708686edf174475310f0203010001028180583650467fa561204296dfa14658da0a99b037c70467e6a3d9910067e4f45d1ee49215b64af5f05190f6e627b39adfad8966da4bd4513717340729e71802a775951b9d88266d1e8cd394234656a3f22790a4d0f679a1191e3c3ca737df82bb55ef7b8e50c9be07f7eb359f5366268cc67a733966d7fc40e897543f270ecd48590240e68e3a07ba47f5d3c80346bf43e383b84aee3a19a67f808bd4b6089be7a0b9b30331e5da9ffd4ab9b90155472ae9c9ce8cf46768e344c81afa64f4a6bbf3fe8b0240d2add052a88916bd1a72b1f688d16b04f1e051cf3a08c3e6898f8b8fdbdf900423b23084d4be1f5179c04106500b5415635a9b84f7a1bced943e70e08c804c0d0240cedda07ddc8bc2ab9254363f5937a3b151322d596486149de26eae8ccca8eed60b30d34f75abfc47661327242301fffbdf874fddd1c59e526e86f4e941cd6c7f0240949750fa2bb25cde4d5c1dd6a313092738ad9d25ca69ca39bc46090a12eaf0396b2fcf76b051d3e6f4373be586e92689db4459b203b2087d8c7429cac66deab502407700787c04703e8e1d72adfbea7203e81b949b849001908f3078adfd7c9f4cb775821671b4858701d2429d5c64b2a7d855d620cb43065351ac55cd6ef039f2be
30820258(30-tag,82-代表长度由2bytes表示,0258-lengh-2bytes) 020101
028180
(N值开始,公钥模)bdbd35558e8594c9a52ad3a5adb1fb823ca2b5533d6f426a633c0c79dfb02a3d29f14837dcae1540bb3338306903477659daa46a6cb6b00f03ed4353c682f2e8
f7baea6e95820daed6b913b1634c424af5e167d9cf13ea22fb1c5431bc3699ed2661f061cacf128b8a402692c236da6e5cfe82c40ef7e708686edf174475310f
(N值结束)
0203 (E值开始)010001(E值结束,公钥指数)
028180(tlv,v>=0x80,L为0x81,1个字节用来表示v的长度)
(D值开始)583650467fa561204296dfa14658da0a99b037c70467e6a3d9910067e4f45d1ee49215b64af5f05190f6e627b39adfad8966da4bd4513717340729e71802a775951b9d88266d1e8cd394234656a3f22790a4d0f679a1191e3c3ca737df82bb55ef7b8e50c9be07f7eb359f5366268cc67a733966d7fc40e897543f270ecd4859
(D值结束)
0240
(P值开始)e68e3a07ba47f5d3c80346bf43e383b84aee3a19a67f808bd4b6089be7a0b9b30331e5da9ffd4ab9b90155472ae9c9ce8cf46768e344c81afa64f4a6bbf3fe8b
(P值结束)
0240
(Q值开始)d2add052a88916bd1a72b1f688d16b04f1e051cf3a08c3e6898f8b8fdbdf900423b23084d4be1f5179c04106500b5415635a9b84f7a1bced943e70e08c804c0d
(Q值结束)
0240
(DP值开始)cedda07ddc8bc2ab9254363f5937a3b151322d596486149de26eae8ccca8eed60b30d34f75abfc47661327242301fffbdf874fddd1c59e526e86f4e941cd6c7f
(DP值结束)
0240
(DP值开始)949750fa2bb25cde4d5c1dd6a313092738ad9d25ca69ca39bc46090a12eaf0396b2fcf76b051d3e6f4373be586e92689db4459b203b2087d8c7429cac66deab5(DP值结束)
0240
(QP值开始)7700787c04703e8e1d72adfbea7203e81b949b849001908f3078adfd7c9f4cb775821671b4858701d2429d5c64b2a7d855d620cb43065351ac55cd6ef039f2be(QP值结束)
RSA学习1的更多相关文章
- RSA学习档案
RSA 学习档案 基本原理 随机选择两个质数p,q模数n=p*qφ(n)=(p−1)(q−1)选择加密指数e: 1 < e < φ(n)计算机密指数d: e*d % φ(n) = 1c = ...
- 非对称加密算法RSA 学习
非对称加密算法RSA 学习 RSA加密算法是一种非对称加密算法.RSA是1977年由罗纳德·李维斯特(Ron Rivest).阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Ad ...
- C#加密与解密(DES\RSA)学习笔记
本笔记摘抄自:https://www.cnblogs.com/skylaugh/archive/2011/07/12/2103572.html,记录一下学习过程以备后续查用. 数据加密技术是网络中最基 ...
- WHM使用手册by lin
WebHost Manager 11使用手册(WHM使用手册) 本手册翻译自cpanel官方文档. 本翻译中文版本版权归美国主机侦探所有,未经允许,禁止复制. Overview(概述) 本用户手册主要 ...
- 关于原根的存在性及个数(Primitive Root Theorem)
我在RSA学习总结的第三部分关于Mille-Rabin素数测试的正确性证明里需要用到此定理,由于证明太长,故另开一章于此.(为啥我说话突然文绉绉了Orz,可能是这周辩论打多了) 结论是对素数p,mod ...
- 原根的存在性及个数证明(Primitive Root Theorem)
我在RSA学习总结的第三部分关于Mille-Rabin素数测试的正确性证明里需要用到此定理,由于证明太长,故另开一章于此.(为啥我说话突然文绉绉了Orz,可能是这周辩论打多了) 结论是对素数p,mod ...
- RSA算法学习
package com.test.rsa; /* * 为了选择公钥和私钥,Bob必须执行如下步骤: * 1)选择两个大素数p和q.那么p和q应该多大呢?该值越大,RSA越难于破解,但是执行加密和解密所 ...
- Crypto++入门学习笔记(DES、AES、RSA、SHA-256)(加解密)
转自http://www.cppblog.com/ArthasLee/archive/2010/12/01/135186.html 最近,基于某些原因和需要,笔者需要去了解一下Crypto++库,然后 ...
- 轻松学习RSA加密算法原理 (转)
轻松学习RSA加密算法原理 (转) http://blog.csdn.net/q376420785/article/details/8557266 http://www.ruanyifeng.com/ ...
随机推荐
- Spring 梳理-profile与条件化定义bean
定义profile <beans> //root <beans profile="dev"> <bean id=.../> </beans ...
- mysql初识笔记
一.初始mysql mysql介绍: mysql版本: 版本号=3个数字+1个后缀 mysql-5.0.9-beta 5 0 9 Beta 主版本号 发行级别 发行稳定级别 发行系列 发行系列的版本号 ...
- EL十一大内置对象
这是一个内置对象可以直接拿来使用,不需要再去声明. 1.读取页面上下文: (1)pageContext对象: 获取URL和URI: <body> URI:${pageContext.req ...
- jar包冲突了?如何确定是和哪个jar包冲突了?
导读:工程编译的时候好好地,怎么一运行就报各种的NoSuch***Error,猜测可能是jar包冲突了,但是究竟是和哪个jar包冲突了呢. 关键词:jar包冲突,NoSuchFileldError,N ...
- 关于Python json解析过程遇到的TypeError: expected string or buffer
关于Python json解析过程遇到的问题:(爬取天气json数据所遇到的问题http://tianqi.2345.com/) part.1 url——http://tianqi.2345.com/ ...
- win10下使用Linux命令
下载Cygwin安装包 官网下载地址:https://cygwin.com/install.html 执行下载好的安装程序 选择默认安装路径C:\cygwin64即可,可在C:\cygwin64\bi ...
- 痞子衡嵌入式:飞思卡尔i.MX RTyyyy系列MCU硬件那些事(2.1)- 玩转板载OpenSDA,Freelink调试器
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RTyyyy系列EVK上板载调试器的用法. 本文是i.MXRT硬件那些事系列第二篇,第一篇痞子衡给大家整体介绍了i.M ...
- SQL SERVER 还原误操作导致还原无法停止,处理办法
昨天遇到运行库不知道单位哪个小伙子,把数据库还原了,导致单位业务全部瘫痪,主数据库一直显示正在还原,真的是不敢动,经过多方寻找,找到此脚本-------------------------数据库还原日 ...
- PHP 插入排序 -- 折半查找
1. 折半查找 -- Binary Insertion Sort 时间复杂度 : O(n^2) 适用条件 : 相对直接插入排序,减少了数值的比较次数.适用于需要排序的数码比较少的情况. <?p ...
- Spring Boot2 系列教程(十五)定义系统启动任务的两种方式
在 Servlet/Jsp 项目中,如果涉及到系统任务,例如在项目启动阶段要做一些数据初始化操作,这些操作有一个共同的特点,只在项目启动时进行,以后都不再执行,这里,容易想到web基础中的三大组件( ...