• 关于

    RSA

    的搜索结果

回答

RSA的中文意思是美国RSA实验室,以研究加密算法而著名,本身也是一种算法的名称。 词汇分析 音标:英 [ˌɑ:r es ˈeɪ]   美 [ˌɑ:res'eɪ]   拓展资料 1、In this paper, a key escrow system based on RSA algorithm for network environment is given.  本文提出了在网络环境中基于RSA算法的一种密钥托管体制。 2、This specifies the use of the RSA Key Exchange and authentication algorithm, along with the RC4_SHA_US CipherSpec.  它规定了RSA密钥交换和认证算法的使用,还规定了RC4SHA US密码规范。 3、Research on Identity Authentication System Based on OTP and RSA  基于OTP和RSA的身份认证系统研究 4、A public key ( id_rsa. pub) and the corresponding private key ( id_rsa) have been created.  现在已创建了公钥(id rsa.pub)和对应的私钥(id rsa)。 5、RSA public-key cryptography is based on this property of factorization.  RSA公钥密码系统就是基于这种因数分解特性的。-------------------------a division of EMC
琴瑟 2019-12-02 01:26:22 0 浏览量 回答数 0

回答

找到解决方法了,从文件中读入私匙的方法: RSA createRSAWithFilename (const char filename, int publicKey){ FILE * fp = fopen (filename, "rb"); if (fp == NULL) { printf ("Unable to open file %s \n", filename); return NULL; } RSA *rsa = RSA_new (); if (publicKey) rsa = PEM_read_RSA_PUBKEY (fp, &rsa, NULL, NULL); else rsa = PEM_read_RSAPrivateKey (fp, &rsa, NULL, NULL); return rsa;}参考这里 另外再一次对自己无语了,虽然在openssl/pem.h中没有找到PEM_read_PrivateKey这个函数的声明,但编译的时候其实没有报错(不知道这个函数声明在哪里),报错是我忘加-ldl选项了。
a123456678 2019-12-02 02:59:06 0 浏览量 回答数 0

回答

一、混合加密的理由   a、前面提及了RSA加解密算法和DES加解密算法这两种加解密算法,由于随着计算机系统能力的不断发展,DES的安全性比它刚出现时会弱得多,追溯历史破解DES的案例层出不穷,一台实际的机器可以在数天内破解DES是让某些人相信他们不能依赖DES的安全性的唯一方法。而相对于DES,RSA的安全性则相对高些,虽然破解RSA的案例也有,但其所付出的代价是相对大的(相对DES),如今RSA的密钥也在升级,这说明破解RSA的难度也在增大。   b、在RSA加解密算法中提及到RSA加密明文会受密钥的长度限制,这就说明用RSA加密的话明文长度是有限制的,而在实际情况我们要进行加密的明文长度或许会大于密钥长度,这样一来我们就不得不舍去RSA加密了。对此,DES加密则没有此限制。   鉴于以上两点(个人观点),单独的使用DES或RSA加密可能没有办法满足实际需求,所以就采用了RSA和DES加密方法相结合的方式来实现数据的加密。   其实现方式即:   1、信息(明文)采用DES密钥加密。   2、使用RSA加密前面的DES密钥信息。   最终将混合信息进行传递。   而接收方接收到信息后:   1、用RSA解密DES密钥信息。   2、再用RSA解密获取到的密钥信息解密密文信息。   最终就可以得到我们要的信息(明文)。 二、实现例子: 结合前面RSA和DES加密: /// <summary> /// RSA和DES混合加密 /// </summary> /// <param name="data">待加密数据</param> /// <param name="publicKey">RSA公钥</param> /// <returns></returns> public Param Encrypt(string data, string publicKey) { //加密数据 DESSecurity DES = new DESSecurity(); string DESKey = DES.GenerateKey(); string encryptData = DES.Encrypt(data, DESKey); //加密DESkey RSASecurity RSA = new RSASecurity(); string encryptDESKey = RSA.Encrypt(DESKey, publicKey); Param mixParam = new Param(); mixParam.DESKey = encryptDESKey; mixParam.Data = encryptData; return mixParam; } /// <summary> /// RSA和DES混合解密 /// </summary> /// <param name="data">待解密数据</param> /// <param name="key">带解密的DESKey</param> /// <param name="privateKey">RSA私钥</param> /// <returns></returns> public string Decrypt(string data, string key, string privateKey) { //解密DESKey RSASecurity RSA = new RSASecurity(); string DESKey = RSA.Decrypt(key, privateKey); //解密数据 DESSecurity DES = new DESSecurity(); return DES.Decrypt(data, DESKey);
知与谁同 2019-12-02 01:26:48 0 浏览量 回答数 0

回答

不是在 RSA 加密算法中安装后门,而是花钱叫 RSA 公司在 Dual_EC_DRBG 里安装后门。-------------------------1、RSA是目前最为流行的公钥加密算法,也称之为非对称加密算法。是RSA公司发明的。 2、到目前为止,RSA算法并未发现任何缺陷。 3、RSA和其他加密算法一样,是基于密钥的(只不过密钥有两个,公钥和私钥)。为了确保安全,密钥是采用某种伪随机函数(纯机械运算没有所谓的“真”随机函数)生成的。 4、RSA公司推出的BSafe安全软件,提供了RSA加解密,以及密钥自动产生等功能。 5、但是BSafe软件产生密钥所使用的算法Dual_EC_DRBG,已经被研究人员确认为是可能存在后门的算法。事实上这已经意味着BSafe软件产生的密钥并不安全了(这在2007年)。但RSA算法还是安全的。 6、目前最新的进展是,斯诺登披露的文件证明了,美国国家安全局(NSA)通过贿赂RSA公司,使其在BSafe安全软件中采用Dual_EC_DRBG算法。而Dual_EC_DRBG则是NSA精心设计的留有后门的算法(当然NSA可能没有告诉RSA公司这一点)。 7、事实上根据RSA算法的设计,如果没有在数论上有重大突破, 那么几乎是不可能被破解的。目前所谓的破解,更多的是针对RSA密钥的直接破解,例如在密钥生成算法中植入后门,也就是Dual_EC_DRBG算法,或 者监听CPU在加密时产生的噪声来推测所使用的密钥。这些方式的局限性在于必须侵入加密过程之前或之中,一旦加密完成,目前没有已知的办法破解。所以 RSA目前还是相对安全的。 8、未来RSA可能的挑战有两个,即数论上出现重大突破,或者计算机计算能力暴增。
管理贝贝 2019-12-02 01:26:49 0 浏览量 回答数 0

回答

RSA是一种算法。 RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。 1973年,在英国政府通讯总部工作的数学家克利福德·柯克斯(Clifford Cocks)在一个内部文件中提出了一个相同的算法,但他的发现被列入机密,一直到1997年才被发表。 对极大整数做因数分解的 难度决定了RSA算法的可靠性。换言之,对一极大整数做因数分解愈困难,RSA算法愈可靠。假如有人找到一种快速因数分解的算法的话,那么用RSA加密的 信息的可靠性就肯定会极度下降。但找到这样的算法的可能性是非常小的。今天只有短的RSA钥匙才可能被强力方式解破。到2013年为止,世界上还没有任何 可靠的攻击RSA算法的方式。只要其钥匙的长度足够长,用RSA加密的信息实际上是不能被解破的。 1983年麻省理工学院在美国为RSA算法申请了专利。这个专利2000年9月21日失效。由于该算法在申请专利前就已经被发表了,在世界上大多数其它地区这个专利权不被承认。
游客886 2019-12-02 01:26:18 0 浏览量 回答数 0

问题

G:\密码学\RSA\RSA.h|28|error: expected initializer before 'RSA'|这是什么错误?

G:\密码学\RSA\RSA.h|28|error: expected initializer before 'RSA'|这是什么错误?...
知与谁同 2019-12-01 20:17:08 486 浏览量 回答数 1

回答

背景 RSA2密钥:是指密钥长度为2048位的密钥。(目前设置在“接口加签方式”) RSA密钥:是指密钥长度为1024位的密钥。(设置在“使用其他加签方式”) 注意:开放平台从2018年1月5日开始创建的应用都没有RSA密钥的设置入口,统一升级到更安全的RSA(SHA256)签名方式,建议您尽快升级,具体详情查看【蚂蚁金服开放平台接口签名方式升级公告】。 左边的为2018年1月5日前创建的应用,右边为2018年1月5日后创建的应用,如下图: 200325-2.png 目前“接口加签方式”又分为RSA2密钥和公钥证书(公钥证书只支持RSA2格式),因此如何从RSA1升级到RSA2可以理解为升级为RSA2密钥签名和升级为公钥证书签名。 支付宝开放平台接口签名方式升级,请按照以下步骤来完成升级: 一、升级为RSA2密钥 1、生成RSA2密钥 生成RSA2密钥详见【如何设置RSA2公钥】(密钥长度请选择RSA2)。 200325-3.png 2、上传应用公钥 把生成的商户应用公钥上传给支付宝,详见【上传商户公钥并换取支付宝公钥】。 需将RSA2密钥的商户应用公钥上传至“接口加签方式”的“公钥”位置。 注意:资金类接口(现金红包、单笔转账到支付宝账户等)必须使用公钥证书,其他接口可使用普通公钥。 200325-4.png 3、修改签名方式 sdk中关于RSA和RSA2密钥签名封装的初始化方法一致,无需修改,只要修改配置信息即可。 (1)修改“商户密钥”为步骤1新生成的RSA2私钥。 (2)修改“sign_type”的参数值为RSA2。 (3)修改“支付宝公钥”为步骤2获取的支付宝公钥,详见【如何获取支付宝公钥】。 注意:验签的时候支付宝公钥需要改成可配置的,因为RSA2的支付宝公钥每个商户都不一样,不能统一默认。 二、升级为公钥证书 1、生成公钥证书 生成公钥证书详见【如何生成公钥证书】(请选择RSA2)。 注意:目前不支持国密的签名方式。 200325-5.png 2、上传公钥文件 把生成的商户应用公钥文件上传给支付宝,详见【上传商户公钥并换取支付宝公钥】。 需将RSA2密钥的商户应用公钥上传至“接口加签方式”的“公钥证书”位置。 200325-6.png 3、修改签名方式 sdk中关于RSA密钥和公钥证书签名封装的初始化方法不同,需修改初始化方法和配置信息。 (1)修改“商户密钥”为步骤1新生成的RSA2私钥。 (2)修改“sign_type”的参数值为RSA2。 (3)在商户应用公钥上传后,下载应用公钥证书、支付宝公钥证书、支付宝公钥根证书。 (4)修改“支付宝公钥”数据为引用“支付宝公钥证书”的路径 (5)添加引用“应用公钥证书”和“支付宝公钥根证书”。 (6)修改初始化方法,详见【RSA2和证书公钥签名验签的区别】的sdk封装签名方式。 根据自己开发语言,选择对应的公钥证书签名初始化进行参考。 注意事项:公钥证书验签使用的是支付宝公钥证书,以及验签方法不同,详见【如何使用证书签名验签】。
保持可爱mmm 2020-05-05 16:42:29 0 浏览量 回答数 0

问题

怎么在ios进行rsa公钥加密,java做rsa私钥解密怎么在ios进行rsa公钥加密,java做rsa私钥解密

需求是这样的: 密钥对通过java生成; IOS进行rsa公钥加密生成密文; JAVA后台对密文做秘钥解密验证; JAVA生成的公钥给到IOS,IOS能进行rsa加密吗?如何实现...
杨冬芳 2019-12-01 20:10:32 1405 浏览量 回答数 1

回答

* RSA.H - header file for RSA.C */ /* Copyright (C) RSA Laboratories, a division of RSA Data Security, Inc., created 1991. All rights reserved. */ int RSAPublicEncrypt PROTO_LIST ((unsigned char *, unsigned int *, unsigned char *, unsigned int, R_RSA_PUBLIC_KEY *, R_RANDOM_STRUCT *)); int RSAPrivateEncrypt PROTO_LIST ((unsigned char *, unsigned int *, unsigned char *, unsigned int, R_RSA_PRIVATE_KEY *)); int RSAPublicDecrypt PROTO_LIST ((unsigned char *, unsigned int *, unsigned char *, unsigned int, R_RSA_PUBLIC_KEY *)); int RSAPrivateDecrypt PROTO_LIST ((unsigned char *, unsigned int *, unsigned char *, unsigned int, R_RSA_PRIVATE_KEY *));
boxti 2019-12-02 01:26:19 0 浏览量 回答数 0

回答

非对称密钥——RSA算法RSA算法是最流行的公钥密码算法,使用长度可以变化的密钥。RSA是第一个既能用于数据加密也能用于数字签名的算法。RSA算法原理如下:1.随机选择两个大质数p和q,p不等于q,计算N=pq;2.选择一个大于1小于N的自然数e,e必须与(p-1)(q-1)互素。3.用公式计算出d:d×e=1(mod(p-1)(q-1))。4.销毁p和q。最终得到的N和e就是“公钥”,d就是“私钥”,发送方使用N去加密数据,接收方只有使用d才能解开数据内容。RSA的安全性依赖于大数分解,小于1024位的N已经被证明是不安全的,而且由于RSA算法进行的都是大数计算,使得RSA最快的情况也比DES慢上倍,这是RSA最大的缺陷,因此通常只能用于加密少量数据或者加密密钥,但RSA仍然不失为一种高强度的算法。
琴瑟 2019-12-02 01:27:11 0 浏览量 回答数 0

回答

非对称密钥——RSA算法 RSA算法是最流行的公钥密码算法,使用长度可以变化的密钥。RSA是第一个既能用于数据加密也能用于数字签名的算法。 RSA算法原理如下: 1.随机选择两个大质数p和q,p不等于q,计算N=pq; 2.选择一个大于1小于N的自然数e,e必须与(p-1)(q-1)互素。 3.用公式计算出d:d×e = 1 (mod (p-1)(q-1)) 。 4.销毁p和q。 最终得到的N和e就是“公钥”,d就是“私钥”,发送方使用N去加密数据,接收方只有使用d才能解开数据内容。 RSA的安全性依赖于大数分解,小于1024位的N已经被证明是不安全的,而且由于RSA算法进行的都是大数计算,使得RSA最快的情况也比DES慢上倍,这是RSA最大的缺陷,因此通常只能用于加密少量数据或者加密密钥,但RSA仍然不失为一种高强度的算法。
知与谁同 2019-12-02 01:26:22 0 浏览量 回答数 0

回答

RSA公钥加密算法是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。 RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准。 今天只有短的RSA钥匙才可能被强力方式解破。到2008年为止,世界上还没有任何可靠的攻击RSA算法的方式。只要其钥匙的长度足够长,用RSA加密的信息实际上是不能被解破的。但在分布式计算和量子计算机理论日趋成熟的今天,RSA加密安全性受到了挑战。 RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但是想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。
云篆 2019-12-02 01:26:25 0 浏览量 回答数 0

回答

如楼上所说,RSA加密是有长度限制的.单纯用RSA加密较长数据时得使用分段加密,效率低下.用RSA+AES是比较主流的做法:AES加密数据产生密文,RSA加密AES密钥产生加密后的AES密钥,然后将密文和加密后的AES密钥一起传输 RSA 加密长字符串,效率不高,实践中,很少用RSA加密长字符串。常见的办法是RSA交换密码, 用密码做AES对称加密。  楼主您好,所有非对称加密,密钥长度直接影响可以加密的内容长度,如果你现在用的是RSA128位加密,可以试试做RSA的256位加密
爱吃鱼的程序员 2020-06-08 09:57:22 0 浏览量 回答数 0

回答

问题原因 支付宝公钥(alipay_public_key)与签名类型(sign_type)不匹配 解决方案 核实接口传递的sign_type参数值是RSA还是RSA2,然后再参考【如何获取支付宝公钥】说明获取到支付宝公钥(alipay_public_key),进行核实是否匹配。 例如:sign_type=RSA,需要获取RSA(sh1)这块的支付宝公钥值 sign_type=RSA2,需要获取RSA2这块的支付宝公钥值 如下图: 帖子图片56.png 注:2018年1月5日后创建的应用已不提供RSA(SH1)签名方式配置入口,只有RSA2签名方式的配置入口,详细可参考【签名方式升级公告】
保持可爱mmm 2020-05-05 17:08:12 0 浏览量 回答数 0

回答

椭圆曲线算法与RSA算法的比较椭圆曲线公钥系统是代替RSA的强有力的竞争者。椭圆曲线加密方法与RSA方法相比,有以下的优点:(1)安全性能更高 如160位ECC与1024位RSA、DSA有相同的安全强度。(2)计算量小,处理速度快 在私钥的处理速度上(解密和签名),ECC远 比RSA、DSA快得多。(3)存储空间占用小 ECC的密钥尺寸和系统参数与RSA、DSA相比要小得多, 所以占用的存储空间小得多。(4)带宽要求低使得ECC具有广泛的应用前景。ECC的这些特点使它必将取代RSA,成为通用的公钥加密算法。比如SET协议的制定者已把它作为下一代SET协议中缺省的公钥密码算法。
聚小编 2019-12-02 01:26:53 0 浏览量 回答数 0

回答

密码是一种可以防止信息泄漏的技术.就体制而言,一般分为两类:对称密码体制和非对称密码体制。本设计从众多加密算法中选用了DES、RSA,以及基于DES和RSA的混合体制来实现对文件的加密与解密。DES和RSA两种算法各有优缺点:DES算法处理速度快,而RSA算法速度慢很多;DES密钥分配困难,而RSA简单;DES适合用于加密信息内容比较长的场合,而RSA适合用于信息保密非常重要的场合;混合密码体制则是综合了前两者的优点而设计
小旋风柴进 2019-12-02 01:26:18 0 浏览量 回答数 0

问题

RSA,DES是什么及RSA的原理

RSA,DES是什么及RSA的原理...
知与谁同 2019-12-01 20:17:25 401 浏览量 回答数 1

回答

java Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding"); android Cipher cipher = Cipher.getInstance("RSA/ECB/NoPadding"); 参考: http://stackoverflow.com/questions/6069369/rsa-encryption-difference-between-java-and-android http://stackoverflow.com/questions/2956647/rsa-encrypt-with-base64-encoded-public-key-in-android android中RSA调用方法 // Cipher cipher = Cipher.getInstance(keyFactory.getAlgorithm()); Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");
liujae 2019-12-02 01:27:13 0 浏览量 回答数 0

问题

如何使用16进制编码的RSA公钥进行RSA加密

如何使用16进制编码的RSA公钥进行RSA加密...
知与谁同 2019-12-01 20:17:50 528 浏览量 回答数 2

问题

#支付宝 如何从RSA1升级到RSA2?

如何从RSA1升级到RSA2?...
保持可爱mmm 2020-05-05 16:42:19 0 浏览量 回答数 1

回答

什么是RSA。 RSA是一种非对称加密算法,用它可以产生公私钥对,就是一个公钥和一个私钥。 什么是数字签名? 数字签名就是 用私钥对数据进行加密。 有了RSA产生的私钥,然后再用RSA加密算法时行加密,才能产生数字签名。 明白。 当然,除了RSA,还有ECC等好多其它非对称算法。
琴瑟 2019-12-02 01:26:44 0 浏览量 回答数 0

回答

什么是RSA。 RSA是一种非对称加密算法,用它可以产生公私钥对,就是一个公钥和一个私钥。 什么是数字签名? 数字签名就是 用私钥对数据进行加密。 有了RSA产生的私钥,然后再用RSA加密算法时行加密,才能产生数字签名。 明白。 当然,除了RSA,还有ECC等好多其它非对称算法。
知与谁同 2019-12-02 01:26:46 0 浏览量 回答数 0

回答

RSA的运算速度慢,所以很少用于对文件的加解密,在保密信道中常用于对会话秘钥的加密。RSA主要用于PKI身份认证系统,详细说有数字证书、数字签名、数字签章、数字水印、数字信封等。目前最贴近生活的一些案例如:银行的u盾、银行卡的刷卡机、淘宝和12306的数字证书。 另外现在随着电子商务电子政务的铺开,登陆认证权限管理越来越贴近生活,RSA的空间越来越大。当然RSA也有着一些问题,虽然有PKCS系列标准框架罩着,仍然有黑客活动的空间,如前一段时间公布的13分钟破解RSA。现在商业的前沿已经开始着手用ECC算法来替代RSA,重构人们的密码生活
琴瑟 2019-12-02 01:26:36 0 浏览量 回答数 0

回答

RSA的运算速度慢,所以很少用于对文件的加解密,在保密信道中常用于对会话秘钥的加密。RSA主要用于PKI身份认证系统,详细说有数字证书、数字签名、数字签章、数字水印、数字信封等。目前最贴近生活的一些案例如:银行的u盾、银行卡的刷卡机、淘宝和一二三0陆的数字证书。 另外现在随着电子商务电子政务的铺开,登陆认证权限管理越来越贴近生活,RSA的空间越来越大。当然RSA也有着一些问题,虽然有PKCS系列标准框架罩着,仍然有黑客活动的空间,如前一段时间公布的一三分钟破解RSA。现在商业的前沿已经开始着手用ECC算法来替代RSA,重构人们的密码生
马铭芳 2019-12-02 01:27:09 0 浏览量 回答数 0

问题

rsa加密算法中,已知公开密匙e=63,n=2773,求解rsa密码私匙

rsa加密算法中,已知公开密匙e=63,n=2773,求解rsa密码私匙...
知与谁同 2019-12-01 20:17:13 478 浏览量 回答数 1

回答

RSA公钥密码 RSA公钥密码是1977年由Ron Rivest、Adi Shamirh和LenAdleman在MIT(美国麻省理工学院〉开发的,1978年首次公布[RIVE78]。它是目前最有影响的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击。目前它已被ISO推荐为公钥数据加密标准。RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但是想分解它们的乘积却极端困难,因此可以将乘积公开作为加密密钥。 RSA的算法结构相当简单,整个算法可以描述如下: (1)选取两个大素数p和q(保密); (2)计算n=pq(公开),γ=(p一1〉(q-1)(保密); (3)随机选取整数e(公开,加密密钥),使得ed(ear)=1 (4)计算d(保密,私人密钥),使得ed≡1(mod r),即d=e-1(mod r); (5)加密:c=me mod n (6)解密:m=cd mod n。 利用RSA对被加密的信息m (长度小于log2n的整数)进行加密得到相应的密文c=me mod n;解密算法则是计算m=cd modn RSA的优点是不需要密钥分配,但缺点是速度慢。RSA公钥密码 RSA 公钥 密码
liujae 2019-12-02 01:26:25 0 浏览量 回答数 0

回答

D RSA 它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, Adi Shamir 和Leonard Adleman。但RSA的安全性一直未能得到理论上的证明。它经历了各种攻击,至今未被完全攻破。 RSA算法易于理解和操作。RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价。即RSA的重大缺陷是无法从理论上把握它的保密性能如何,而且密码学界多数人士倾向于因子分解不是NPC问题。 RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)分组长度太大,为保证安全性,n 至少也要 600 bits 以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。目前,SET( Secure Electronic Transaction )协议中要求CA采用比特长的密钥,其他实体使用比特的密钥。
沉默术士 2019-12-02 01:27:01 0 浏览量 回答数 0

回答

通信网络特别是互联网的高速发展使得信息安全这个问题受到人们的普遍关注。在信息安全算法中,RSA方法的优点主要是原理简单、易于使用。但是,随着分解大整数方法的完善、计算机速度的提高以及计算机网络的发展,作为RSA加解密安全保障的大整数要求越来越大。为保证RSA使用的安全性,密钥的位数不断增加,目前一般认为RSA需要1024位以上的字长才具有安全保障。但是,密钥长度的增加导致加解密的速度大大降低,硬件实现也变得越来越复杂,这给使用RSA的应用带来了极大的负担(尤其是进行大量安全交易的电子商务),从而使其应用范围日益受到制约。 ECC算法只需采用较短的密钥就可以达到和RSA算法相同的加密强度,它的数论基础是有限域上的椭圆曲线离散对数问题,现在还没有针对这个难题的亚指数时间算法,因此,ECC算法具有每比特最高的安全强度。由于智能卡在CPU处理能力和RAM大小上受限,采用一种运算量小同时能提供高加密强度的公钥密码机制对于实现数字签名应用非常关键。ECC在这方面具有明显优势,160位ECC算法的安全性相当于1024位的RSA算法,而210位的ECC则相当于2048位的RSA。相信ECC技术在信息安全领域中的应用将会越来越广泛。
管理贝贝 2019-12-02 01:26:52 0 浏览量 回答数 0

回答

RSA算法简介 这种算法1978年就出现了,它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman。但RSA的安全性一直未能得到理论上的证明。 RSA的安全性依赖于大数分解。公钥和私钥都是两个大素数( 大于 100个十进制位)的函数。据猜测,从一个密钥和密文推断出明文的难度等同于分解两个大素数的积。 密钥对的产生。选择两个大素数,p 和q 。计算: n = p * q 然后随机选择加密密钥e,要求 e 和 ( p - 1 ) * ( q - 1 ) 互质。最后,利用Euclid 算法计算解密密钥d, 满足 e * d = 1 ( mod ( p - 1 ) * ( q - 1 ) ) 其中n和d也要互质。数e和n是公钥,d是私钥。两个素数p和q不再需要,应该丢弃,不要让任何人知道。 加密信息 m(二进制表示)时,首先把m分成等长数据块 m1 ,m2,..., mi ,块长s,其中 2^s <= n, s 尽可能的大。对应的密文是: ci = mi^e ( mod n ) ( a ) 解密时作如下计算: mi = ci^d ( mod n ) ( b ) RSA 可用于数字签名,方案是用 ( a ) 式签名, ( b )式验证。具体操作时考虑到安全性和 m信息量较大等因素,一般是先作 HASH 运算。 RSA 的安全性。 RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前, RSA的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。现在,人们已能分解140多个十进制位的大素数。因此,模数n必须选大一些,因具体适用情况而定。 RSA的速度。 由于进行的都是大数计算,使得RSA最快的情况也比DES慢上100倍,无论是软件还是硬件实现。速度一直是RSA的缺陷。一般来说只用于少量数据加密。 RSA的选择密文攻击。 RSA在选择密文攻击面前很脆弱。一般攻击者是将某一信息作一下伪装(Blind),让拥有私钥的实体签署。然后,经过计算就可得到它所想要的信息。实际上,攻击利用的都是同一个弱点,即存在这样一个事实:乘幂保留了输入的乘法结构: ( XM )^d = X^d *M^d mod n 前面已经提到,这个固有的问题来自于公钥密码系统的最有用的特征--每个人都能使用公钥。但从算法上无法解决这一问题,主要措施有两条:一条是采用好的公钥协议,保证工作过程中实体不对其他实体任意产生的信息解密,不对自己一无所知的信息签名;另一条是决不对陌生人送来的随机文档签名,签名时首先使用One-Way Hash Function对文档作HASH处理,或同时使用不同的签名算法。在中提到了几种不同类型的攻击方法。 RSA的公共模数攻击。 若系统中共有一个模数,只是不同的人拥有不同的e和d,系统将是危险的。最普遍的情况是同一信息用不同的公钥加密,这些公钥共模而且互质,那末该信息无需私钥就可得到恢复。设P为信息明文,两个加密密钥为e1和e2,公共模数是n,则: C1 = P^e1 mod n C2 = P^e2 mod n 密码分析者知道n、e1、e2、C1和C2,就能得到P。 因为e1和e2互质,故用Euclidean算法能找到r和s,满足: r * e1 + s * e2 = 1 假设r为负数,需再用Euclidean算法计算C1^(-1),则 ( C1^(-1) )^(-r) * C2^s = P mod n 另外,还有其它几种利用公共模数攻击的方法。总之,如果知道给定模数的一对e和d,一是有利于攻击者分解模数,一是有利于攻击者计算出其它成对的e’和d’,而无需分解模数。解决办法只有一个,那就是不要共享模数n。 RSA的小指数攻击。 有一种提高RSA速度的建议是使公钥e取较小的值,这样会使加密变得易于实现,速度有所提高。但这样作是不安全的,对付办法就是e和d都取较大的值。 RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。 RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价。即RSA的重大缺陷是无法从理论上把握它的保密性能如何,而且密码学界多数人士倾向于因子分解不是NPC问题。RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)分组长度太大,为保证安全性,n 至少也要 600 bits以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。目前,SET(Secure Electronic Transaction)协议中要求CA采用2048比特长的密钥,其他实体使用1024比特的密钥。 参考资料: http://www.radyinfo.com/KNOWLEDGE/RSA.HTM
liujae 2019-12-02 01:26:23 0 浏览量 回答数 0

回答

这些都是VPN(虚拟专用网络)的传输协议。 L2TP/ipspec PSK :指支持PSK加密算法的L2TP加密链接 L2TP/IPSPEC RSA:指支持RSA加密算法的L2TP加密链接 IPSEC XAUTH PSK:指支持PSK加密算法的带扩展验证的链接。 IPSPEC XAUTH RSA:指支持RSA算法的带扩展验证的链接。 IPSPEC HYBRID RSA:这个不知道,以前没接触过。 另外,解释一下XAUTH(扩展验证)这个东西 其实XAUTH就是oauth的简化版,只是支持桌面和移动设备,web认证还是需要oauth的。
玄学酱 2019-12-02 01:26:45 0 浏览量 回答数 0

云产品推荐

上海奇点人才服务相关的云产品 小程序定制 上海微企信息技术相关的云产品 国内短信套餐包 ECS云服务器安全配置相关的云产品 开发者问答 阿里云建站 自然场景识别相关的云产品 万网 小程序开发制作 视频内容分析 视频集锦 代理记账服务 阿里云AIoT