CN108092761B - 一种基于rsa和3des的密钥管理方法及系统 - Google Patents
一种基于rsa和3des的密钥管理方法及系统 Download PDFInfo
- Publication number
- CN108092761B CN108092761B CN201611031079.XA CN201611031079A CN108092761B CN 108092761 B CN108092761 B CN 108092761B CN 201611031079 A CN201611031079 A CN 201611031079A CN 108092761 B CN108092761 B CN 108092761B
- Authority
- CN
- China
- Prior art keywords
- 3des
- key
- client
- rsa
- platform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/302—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开一种基于RSA和3DES的密钥管理方法及系统,其方法,包括:平台分配RSA秘钥给客户端;客户端采用该RSA公钥加密,公钥加密算法RSA解密,获取动态的3DES秘钥对,保证3DES的秘钥分发安全;客户端采用3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;客户端采用3DES秘钥对业务接口进行解密,在无法解密或3DES秘钥无效时,获取动态的3DES秘钥,实现使得业务请求安全性高、效率快,使得高并发移动互联网应用中,业务请求数据的安全性与加解密效率得到兼顾,与传统的base64和3DES单一加密防护相比,安全性大大提高,而且RSA只用于保障3DES秘钥对的分发,业务数据的加解密由3DES算法处理,最大限度的提高了业务请求的加解密效率。
Description
技术领域
本发明涉及密钥管理技术领域,尤其涉及一种基于RSA和3DES的密钥管理方法及系统。
背景技术
随着移动互联网的发展,为便于用户使用手持设备随时访问应用,提高应用的访问量,越来越多的传统PC端产品逐渐转向手持终端应用,且各行业均逐渐倾向借助移动终端的便利性做业务推广,移动终端在日常生活占的比重越来越大。传统的明文数据传输、简单base64编码、静态约定密码MD5校验和单一的对称算法加密的交互方式,容易被破解,给客户端接口请求的业务安全性带来严重的挑战,特别是对于涉及金钱的应用客户端推广营销活动,往往容易被专业的活动猎手通过分析活动流程、抓取交互数据等方式查找活动漏洞,进而采用不正当的手段伪造大量客户端请求,绕过正常的活动业务流程,盗刷活动金额、积分或有价奖券,扰乱正常的营销活动;甚至发现平台侧的漏洞后,发起平台攻击,导致平台瘫痪,影响整个应用的正常使用,因此,对移动客户端与平台侧的接口交互有着越来越高的要求,必须利用完善的加密机制对接口交互数据进行加密,提高移动应用的安全性。
加密技术通常分为两大类:“对称式”和“非对称式”。
对称式的加密算法,信息接收双方都需事先知道密匙和加解密算法且其密匙是相同的,之后便可对数据进行加解密了。常见的对称加密算法有数据加密算法(DES)和三重数据加密算法块密码(3DES),DES是一种分组数据加密技术(先将数据分成固定长度的小数据块,之后进行加密),速度较快,适用于大量数据加密,而3DES是一种基于DES的加密算法,使用3个不同密匙对同一个分组数据块进行3次加密,如此以使得密文强度更高。
非对称加密算法的核心源于数学问题,用两个数学相关的密钥对信息进行编码,它存在公钥和私钥的概念,要完成加解密操作,需要两个密钥同时参与。常说的“公钥加密,私钥解密”或“私钥加密,公钥解密”都属于非对称加密的范畴,公钥加密的数据必须使用私钥才可以解密,同样,私钥加密的数据也只能通过公钥进行解密。RSA是基于大数的因式分解数学难题,它也是应用最广泛的非对称加密算法。
对称加密算法,算法公开、计算量小、加密速度快、加密效率高,缺点是双方都使用同样秘钥,安全性得不到保证。相比对称加密,非对称加密的安全性得到了提升,但是也存在明显的缺点,非对称算法加解密的效率要远远低于对称算法加解密。所以非对称加密往往被用在一些安全性要求高,速率要求低的应用或领域中。
由以上可知,无论是对称加密还是非对称加密,如何兼顾效率与安全是现有密钥管理无法解决的技术问题。
发明内容
本发明要解决的技术问题是提供一种基于RSA和3DES的密钥管理方法及系统,达到实现使得业务请求安全性高、效率快,使得高并发移动互联网应用中,业务请求数据的安全性与加解密效率得到兼顾,与传统的base64和3DES单一加密防护相比,安全性大大提高,而且RSA只用于保障3DES秘钥对的分发,业务数据的加解密由3DES算法处理,最大限度的提高了业务请求的加解密效率。
本发明的目的在于提供一种基于RSA和3DES的密钥管理方法,包括:平台分配公钥加密算法RSA秘钥给客户端;
客户端采用所述分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;
客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;
客户端采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥。
其中,所述平台分配RSA秘钥给客户端,包括:
所述平台静态分配RSA秘钥给客户端。
其中,所述客户端获取动态的三重数据加密算法块密码3DES秘钥对,包括:
所述客户端获取授权接口,用RSA公钥加密请求参数,并发送所述RSA公钥加密请求参数到平台;
所述平台接收所述RSA公钥加密请求参数,用RSA私钥解密所述参数,验证客户端国际移动装备辨识码IMEI和接口信息后,分配3DES秘钥对和会话密钥key,返回所述3DES秘钥对和会话密钥key数据加密信息到客户端;
所述客户端用RAS私钥解密所述返回的结果,并保存3DES秘钥对。
其中,所述客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,包括:
所述客户端使用分配的3DES公钥请求加密参数,将所述加密参数的请求发送给到平台,发起业务请求;
所述平台接收所述加密参数的请求,使用用户对应的3DES私钥解密参数,业务处理后,用对应的3DES公钥加密返回数据;
所述平台返回所述用对应的3DES公钥加密信息到客户端;
所述客户端使用分配的3DES私钥解密所述返回结果即解密所述用对应的3DES公钥加密信息。
其中,所述客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,包括:
所述客户端使用分配的3DES公钥加密请求参数,发起业务请求到平台;
所述平台使用用户对应的3DES私钥解密参数,业务处理后,分配所述3DES秘钥对,用所述对应的3DES公钥加密返回数据到客户端;
所述客户端使用分配的3DES私钥解密返回结果,并保存所述3DES秘钥对;
所述客户端使用所述分配的3DES公钥加密请求参数,发起业务请求到平台;
所述平台使用用户对应所述3DES私钥解密参数,业务处理后,若不是流程的最后一步,分配所述3DES秘钥对,用所述对应的3DES公钥加密返回数据到客户端;
所述客户端使用所述3DES私钥解密返回结果,若有下一步的秘钥对,则保存所述3DES私钥解密返回结果。
本发明的目的在于还提供一种基于RSA和3DES的密钥管理系统,包括:平台、客户端;
所述平台,用于分配公钥加密算法RSA秘钥给所述客户端;
所述客户端,用于采用所述分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;和用于采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;以及采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥。
其中,所述平台,用于分配公钥加密算法RSA秘钥给所述客户端,包括:
所述平台,用于静态分配公钥加密算法RSA秘钥给所述客户端。
其中,所述基于RSA和3DES的密钥管理系统,还包括:
所述客户端,用于获取授权接口,用RSA公钥加密请求参数,并发送所述RSA公钥加密请求参数到所述平台;
所述平台,用于接收所述RSA公钥加密请求参数,用RSA私钥解密所述参数,验证所述客户端国际移动装备辨识码IMEI和接口信息后,分配3DES秘钥对和会话密钥key,返回所述3DES秘钥对和会话密钥key数据加密信息到所述客户端;
所述客户端,还用于用RAS私钥解密所述返回的结果,并保存3DES秘钥对。
其中,所述基于RSA和3DES的密钥管理系统,还包括:
所述客户端,用于使用分配的3DES公钥请求加密参数,将所述加密参数的请求发送给到所述平台,发起业务请求;
所述平台,用于接收所述加密参数的请求,使用用户对应的3DES私钥解密参数,业务处理后,用对应的3DES公钥加密返回数据,和返回所述用对应的3DES公钥加密信息到所述客户端;
所述客户端,还用于使用分配的3DES私钥解密所述返回结果即解密所述用对应的3DES公钥加密信息。
其中,所述基于RSA和3DES的密钥管理系统,还包括:
所述客户端,用于使用分配的3DES公钥加密请求参数,发起业务请求到所述平台;
所述平台,用于使用用户对应的3DES私钥解密参数,业务处理后,分配所述3DES秘钥对,用所述对应的3DES公钥加密返回数据到所述客户端;
所述客户端,还用于使用分配的3DES私钥解密返回结果,并保存该3DES秘钥对;和用于使用所述分配的3DES公钥加密请求参数,发起业务请求到所述平台;
所述平台,还用于使用用户对应所述3DES私钥解密参数,业务处理后,若不是流程的最后一步,分配所述3DES秘钥对,用所述对应的3DES公钥加密返回数据到所述客户端;
所述客户端,还用于使用所述3DES私钥解密返回结果,若有下一步的秘钥对,则保存所述3DES私钥解密返回结果。
本发明提供的基于RSA和3DES的密钥管理方法,包括:平台分配公钥加密算法RSA秘钥给客户端;客户端采用该分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;客户端采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥,实现使得业务请求安全性高、效率快,使得高并发移动互联网应用中,业务请求数据的安全性与加解密效率得到兼顾,与传统的base64和3DES单一加密防护相比,安全性大大提高,而且RSA只用于保障3DES秘钥对的分发,业务数据的加解密由3DES算法处理,最大限度的提高了业务请求的加解密效率。
本发明提供的基于RSA和3DES的密钥管理系统,包括:平台平台,用于分配公钥加密算法RSA秘钥给客户端;客户端,用于采用该分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;和用于采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;以及采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥,实现使得业务请求安全性高、效率快,使得高并发移动互联网应用中,业务请求数据的安全性与加解密效率得到兼顾,与传统的base64和3DES单一加密防护相比,安全性大大提高,而且RSA只用于保障3DES秘钥对的分发,业务数据的加解密由3DES算法处理,最大限度的提高了业务请求的加解密效率。
附图说明
图1,为本发明基于RSA和3DES的密钥管理方法的示意图;
图2,为本发明客户端获取动态的三重数据加密算法块密码3DES秘钥对的示意图;
图3,为客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式访问业务接口的一种实施方式的示意图;
图4,为客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式访问业务接口的另一种实施方式的示意图;
图5,为本发明基于RSA和3DES的密钥管理系统的示意图。
具体实施方式
本发明提供一种基于RSA和3DES的密钥管理方法及系统,应用于密钥管理技术领域,本发明基于RSA和3DES的密钥管理方法,包括:平台分配(公钥加密算法)RSA秘钥给客户端;客户端采用该分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;客户端采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥,实现使得业务请求安全性高、效率快,使得高并发移动互联网应用中,业务请求数据的安全性与加解密效率得到兼顾,与传统的base64和3DES单一加密防护相比,安全性大大提高,而且RSA只用于保障3DES秘钥对的分发,业务数据的加解密由3DES算法处理,最大限度的提高了业务请求的加解密效率。
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种基于RSA和3DES的密钥管理方法。
请参见图1,图1为本发明基于RSA和3DES的密钥管理方法的示意图,本发明基于RSA和3DES的密钥管理方法,包括:
S11、平台分配公钥加密算法RSA秘钥给客户端;
S12、客户端采用该分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;
S13、客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;
S14、客户端采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥。
其中,平台分配RSA秘钥给客户端,包括:
平台静态分配RSA秘钥给客户端。
请参见图2,图2为本发明客户端获取动态的三重数据加密算法块密码3DES秘钥对的示意图,其中,客户端获取动态的三重数据加密算法块密码3DES秘钥对,包括:
客户端获取授权接口,用RSA公钥加密请求参数,并发送该RSA公钥加密请求参数到平台;
平台接收该RSA公钥加密请求参数,用RSA私钥解密该参数,验证客户端国际移动装备辨识码(IMEI)和接口信息后,分配3DES秘钥对和会话密钥(key),返回该3DES秘钥对和会话密钥key数据加密信息到客户端;
客户端用RAS私钥解密该返回的结果,并保存3DES秘钥对。
客户端用获取到的RSA公钥对3DES请求授权接口的请求参数(一般不超过1024个字符)进行加密,平台接到请求后,用对应的RSA私钥对请求参数,校验请求参数的合法性后,动态分配该用户唯一的3DES秘钥对(公钥和私钥,公钥用于加密,私钥用于解密),可根据业务需要设置秘钥对的有效时间,将秘钥对和其他参数用RSA公钥加密后返回给客户端,客户端将平台的返回结果用RSA私钥解密后,将动态分配的3DES秘钥对存储在客户端,供其他业务接口加解密使用。
以上描述了RSA和3DES秘钥对的分配策略和请求逻辑,由于RSA算法是大数运算,加解密效率低,RSA的加解密最快的情况也比DES慢上100倍,但该算法安全性高,3DES算法的加解密效率高,但秘钥对的分发传输安全性难以保证,因此我们可以设计RSA算法来保障3DES动态秘钥对的分配和传输安全,3DES秘钥对则用于业务请求接口数据加解密,RSA和3DES两者结合,即保证了3DES秘钥的分发全,也尽可能提高了接口的加、解密效率。
客户端使用已分配的3DES公钥加密业务接口的请求参数,平台接到客户端发送的请求后,用该用户对应的3DES私钥解密,执行业务逻辑后,将返回数据用该用户的3DES公钥加密返回给客户端,客户端则用3DES私钥解密,解析平台返回的结果,完成了一次业务请求接口的交互,从而保证数据的安全性,可根据应用的实际需求,在请求参数中可以增加有效时间戳等参数,后台校验时间戳无效后,拒绝本次请求,客户端需再次发起请求,防止本次加密请求链接被抓取后用于恶意攻击。
请参见图3,图3为客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式访问业务接口的一种实施方式的示意图,其中,客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,包括:
客户端使用分配的3DES公钥请求加密参数,将该加密参数的请求发送给到平台,发起业务请求;
平台接收该加密参数的请求,使用用户对应的3DES私钥解密参数,业务处理后,用对应的3DES公钥加密返回数据;
平台返回该用对应的3DES公钥加密信息到客户端;
客户端使用分配的3DES私钥解密该返回结果即解密该用对应的3DES公钥加密信息。
众多大型业务推广活动的业务流程会有多个业务连贯紧密的操作步骤,为保证用户完全按照活动设计的业务规则顺序执行,防止极少数专业猎手破解3DES加密数据后,绕过或伪造中间活动步骤,我们可以在活动流程前一步骤请求接口的返回结果中,动态的生成、绑定下一步骤的业务3DES秘钥对,保证所有到达平台的请求完全按照业务规则设置的流程进行。
该活动流程的第一步,可以是客户端用已分配的3DES加密请求数据,平台用对应的3DES私钥解密请求参数,处理业务逻辑,并分配下一步骤的3DES秘钥对,客户端用现有的3DES私钥解密,并保存下一步的3DES秘钥对;执行下一步骤时,客户端使用上一步骤分配的3DES秘钥加密请求参数和解密返回结果,平台则用该步骤对应的3DES私钥解密请求参数,处理业务逻辑,并分配下一步骤的秘钥对,私钥加密后返回给客户端。从而保证活动流程有序进行,并最大程度上保证了数据的安全性。
请参见图4,图4为客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式访问业务接口的另一种实施方式的示意图,其中,客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口的另一种实施方式,包括:
客户端使用分配的3DES公钥加密请求参数,发起业务请求到平台;
平台使用用户对应的3DES私钥解密参数,业务处理后,分配该3DES秘钥对,用该对应的3DES公钥加密返回数据到客户端;
客户端使用分配的3DES私钥解密返回结果,并保存该3DES秘钥对;
客户端使用该分配的3DES公钥加密请求参数,发起业务请求到平台;
平台使用用户对应该3DES私钥解密参数,业务处理后,若不是流程的最后一步,分配该3DES秘钥对,用该对应的3DES公钥加密返回数据到客户端;
客户端使用该3DES私钥解密返回结果,若有下一步的秘钥对,则保存该3DES私钥解密返回结果。
本发明还提供一种基于RSA和3DES的密钥管理系统。
请参见图5,图5为本发明基于RSA和3DES的密钥管理系统的示意图,本发明基于RSA和3DES的密钥管理系统50,包括:平台501、客户端502;
平台501,用于分配公钥加密算法RSA秘钥给客户端502;
客户端502,用于采用该分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;和用于采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;以及采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥。
其中,平台501,用于分配公钥加密算法RSA秘钥给客户端502,包括:
平台501,用于静态分配公钥加密算法RSA秘钥给客户端502。
其中,本发明基于RSA和3DES的密钥管理系统50,还可以包括:
客户端502,用于获取授权接口,用RSA公钥加密请求参数,并发送该RSA公钥加密请求参数到平台501;
平台501,用于接收该RSA公钥加密请求参数,用RSA私钥解密该参数,验证客户端502国际移动装备辨识码IMEI和接口信息后,分配3DES秘钥对和会话密钥key,返回该3DES秘钥对和会话密钥key数据加密信息到客户端502;
客户端502,还用于用RAS私钥解密该返回的结果,并保存3DES秘钥对。
客户端502用获取到的RSA公钥对3DES请求授权接口的请求参数(一般不超过1024个字符)进行加密,平台501接到请求后,用对应的RSA私钥对请求参数,校验请求参数的合法性后,动态分配该用户唯一的3DES秘钥对(公钥和私钥,公钥用于加密,私钥用于解密),可根据业务需要设置秘钥对的有效时间,将秘钥对和其他参数用RSA公钥加密后返回给客户端502,客户端502将平台501的返回结果用RSA私钥解密后,将动态分配的3DES秘钥对存储在客户端502,供其他业务接口加解密使用。
以上描述了RSA和3DES秘钥对的分配策略和请求逻辑,由于RSA算法是大数运算,加解密效率低,RSA的加解密最快的情况也比DES慢上100倍,但该算法安全性高,3DES算法的加解密效率高,但秘钥对的分发传输安全性难以保证,因此我们可以设计RSA算法来保障3DES动态秘钥对的分配和传输安全,3DES秘钥对则用于业务请求接口数据加解密,RSA和3DES两者结合,即保证了3DES秘钥的分发全,也尽可能提高了接口的加、解密效率。
客户端502使用已分配的3DES公钥加密业务接口的请求参数,平台501接到客户端502发送的请求后,用该用户对应的3DES私钥解密,执行业务逻辑后,将返回数据用该用户的3DES公钥加密返回给客户端502,客户端502则用3DES私钥解密,解析平台501返回的结果,完成了一次业务请求接口的交互,从而保证数据的安全性,可根据应用的实际需求,在请求参数中可以增加有效时间戳等参数,后台校验时间戳无效后,拒绝本次请求,客户端502需再次发起请求,防止本次加密请求链接被抓取后用于恶意攻击。
其中,本发明基于RSA和3DES的密钥管理系统50,又可以包括:
客户端502,用于使用分配的3DES公钥请求加密参数,将该加密参数的请求发送给到平台501,发起业务请求;
平台501,用于接收该加密参数的请求,使用用户对应的3DES私钥解密参数,业务处理后,用对应的3DES公钥加密返回数据,和返回该用对应的3DES公钥加密信息到客户端502;
客户端502,还用于使用分配的3DES私钥解密该返回结果即解密该用对应的3DES公钥加密信息。
众多大型业务推广活动的业务流程会有多个业务连贯紧密的操作步骤,为保证用户完全按照活动设计的业务规则顺序执行,防止极少数专业猎手破解3DES加密数据后,绕过或伪造中间活动步骤,我们可以在活动流程前一步骤请求接口的返回结果中,动态的生成、绑定下一步骤的业务3DES秘钥对,保证所有到达平台501的请求完全按照业务规则设置的流程进行。
该活动流程的第一步,可以是客户端502用已分配的3DES加密请求数据,平台501用对应的3DES私钥解密请求参数,处理业务逻辑,并分配下一步骤的3DES秘钥对,客户端502用现有的3DES私钥解密,并保存下一步的3DES秘钥对;执行下一步骤时,客户端502使用上一步骤分配的3DES秘钥加密请求参数和解密返回结果,平台501则用该步骤对应的3DES私钥解密请求参数,处理业务逻辑,并分配下一步骤的秘钥对,私钥加密后返回给客户端502。从而保证活动流程有序进行,并最大程度上保证了数据的安全性。
其中,本发明基于RSA和3DES的密钥管理系统50,再可以包括:
客户端502,用于使用分配的3DES公钥加密请求参数,发起业务请求到平台501;
平台501,用于使用用户对应的3DES私钥解密参数,业务处理后,分配该3DES秘钥对,用该对应的3DES公钥加密返回数据到客户端502;
客户端502,还用于使用分配的3DES私钥解密返回结果,并保存该3DES秘钥对;和用于使用该分配的3DES公钥加密请求参数,发起业务请求到平台501;
平台501,还用于使用用户对应该3DES私钥解密参数,业务处理后,若不是流程的最后一步,分配该3DES秘钥对,用该对应的3DES公钥加密返回数据到客户端502;
客户端502,还用于使用该3DES私钥解密返回结果,若有下一步的秘钥对,则保存该3DES私钥解密返回结果。
本发明基于RSA和3DES的密钥管理方法及系统主要涉及:静态RSA秘钥对分配策略、动态3DES秘钥对分配策略、通用业务接口加密策略、核心活动流程加密交互策略四个方面;具体描述如下:RSA静态秘钥对分配策略在本发明创造技术方案中,静态RSA秘钥分配规则对申请动态3DES秘钥起着重要作用,策略如下:
RSA秘钥分配规则可根据应用的重要性和安全性高低,采用两种分配方式:
1)平台使用统一的RSA秘钥对(公钥和私钥),客户端采用常量存储的方式,固定写在客户端,一次分配终身使用。
2)平台根据用户终端的移动设备国际身份码IMEI,该身份码可唯一识别设备终端,终端第一次访问平台时,平台根据IMEI分配唯一的RSA秘钥对(公钥和私钥),终端应用将该秘钥对以常量的方式写在客户端。也可根据实际需求和具体的业务交互方式,增加动态更换策略,提高RSA秘钥对的安全性;
以上两种分配方式均由后台分配RSA秘钥对后,固定写在客户端,客户端使用固定分配的RAS公钥加密上报请求参数,使用RSA私钥解密平台接口返回结果,策略2)平台可控制和更换终端的RSA秘钥对,自主性较大,但维护成本较高,可根据应用的安全级别选择,同时客户端打包必须会对代码进行混淆,防止专业猎手对应用客户端进行反编译,保证秘钥安全性。
本发明基于RSA和3DES的密钥管理方法及系统,由于采用非对称RSA加密算法和对称3DES加密算法、静态和动态秘钥分配策略相结合的加密策略,设计了一套完整的秘钥分配和加密机制,RSA算法保证了动态3DES秘钥的分发安全,3DES算法保证了业务请求数据的加、解密效率,大大提高了终端应用跟平台交互的数据安全,同时,也设计了多步骤活动流程加密交互策略,保证用户按照合法业务流程参与活动,无法模拟请求绕过中间步骤猎取奖品。
本发明基于RSA和3DES的密钥管理方法及系统,非常适合众多移动互联网终端应用,特别是经常举行推广活动的应用,此类应用对数据安全、流程跟踪和加解密效率有较高的要求,本发明提供了一整套加解密和防作弊的设计方案,可以满足此类应用的需要。
本发明基于RSA和3DES的密钥管理方法及系统,RSA算法的安全性高,但速度一直是它的缺陷,一般只用于少量数据加密,因此数据大小尽量控制在1024个字符。
本发明基于RSA和3DES的密钥管理方法及系统,在具体的加密数据中根据业务需求,在3DES秘钥分配时可加入其他校验参数,或者MD5校验,终端需要对应用代码需要进行混淆,防止安装包被反编译,被猎手轻易的分析客户端的实现逻辑,带来未知的风险。
本发明基于RSA和3DES的密钥管理方法及系统,采用非对称加密算法和对称加密算法、静态和动态秘钥分配策略相结合,即保证数据传输的安全性,也保证了数据的加、解密效率,解决移动互联网产品中业务请求安全性和加解密效率难以兼顾的问题。
本发明基于RSA和3DES的密钥管理方法及系统,采用多步骤活动流程加密交互策略,避免业务流程中关键步骤被恶意篡改或绕行,导致平台或用户利益受损失的问题,保证业务流程的一致性。
本发明基于RSA和3DES的密钥管理方法及系统,采用非对称加密算法和对称加密算法、静态和动态秘钥分配策略相结合的加密交互方式,解决移动互联网应用的接口请求安全性差,加解密效率低的问题,同时设计了多步骤流程加密交互验证机制,解决活动中间步骤被篡改的问题。
本发明提供的基于RSA和3DES的密钥管理方法,包括:平台分配公钥加密算法RSA秘钥给客户端;客户端采用该分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;客户端采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥,实现使得业务请求安全性高、效率快,使得高并发移动互联网应用中,业务请求数据的安全性与加解密效率得到兼顾,与传统的base64和3DES单一加密防护相比,安全性大大提高,而且RSA只用于保障3DES秘钥对的分发,业务数据的加解密由3DES算法处理,最大限度的提高了业务请求的加解密效率。
本发明提供的基于RSA和3DES的密钥管理系统50,包括:平台501、客户端502;平台501,用于分配公钥加密算法RSA秘钥给客户端502;客户端502,用于采用该分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;和用于采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;以及采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥,实现使得业务请求安全性高、效率快,使得高并发移动互联网应用中,业务请求数据的安全性与加解密效率得到兼顾,与传统的base64和3DES单一加密防护相比,安全性大大提高,而且RSA只用于保障3DES秘钥对的分发,业务数据的加解密由3DES算法处理,最大限度的提高了业务请求的加解密效率。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。而且,术语“包含”、“包括”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系统要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个、、、、、、”限定的要素,并不排除在包括所述要素的过程、方法、物品、设备或者装置中还存在另外的相同要素。
对于本发明基于RSA和3DES的密钥管理方法及系统,实现的形式是多种多样的。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于RSA和3DES的密钥管理方法,其特征在于,包括:
平台分配公钥加密算法RSA秘钥给客户端;
客户端采用所述分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;
客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;
客户端采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥;
所述平台分配RSA 秘钥给客户端,包括:所述平台静态分配RSA秘钥给客户端;
所述客户端获 取动态的三重数据加密算法块密码3DES秘钥对,包括:
所述客户端获取授权接口,用RSA公钥加密请求参数,并发送所述RSA公钥加密请求参数到平台;
所述平台接收所述RSA公钥加密请求参数,用RSA私钥解密所述参数,验证客户端国际移动装备辨识码IMEI和接口信息后,分配3DES秘钥对和会话密钥key,返回所述3DES秘钥对和会话密钥key数据加密信息到客户端;
所述客户端用RAS私钥解密所述返回的结果,并保存3DES秘钥对。
2.如权利要求1所述的基于RSA和3DES的密钥管理方法,其特征在于,所述 客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接 口,包括:
所述客户端使用分配的3DES公钥请求加密参数,将所述加密参数的请求发送给到平台,发起业务请求;
所述平台接收所述加密参数的请求,使用用户对应的3DES私钥解密参数,业务处理后,用对应的3DES公钥加密返回数据;
所述平台返回所述用对应的3DES公钥加密信息到客户端;
所述客户端使用分配的3DES私钥解密所述返回结果即解密所述用对应的3DES公钥加密信息。
3.如权利要求1所述的基于RSA和3DES的密钥管理方法,其特征在于,所述 客户端采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接 口,包括:
所述客户端使用分配的3DES公钥加密请求参数,发起业务请求到平台;
所述平台使用用户对应的3DES私钥解密参数,业务处理后,分配所述3DES秘钥对,用所述对应的3DES公钥加密返回数据到客户端;
所述客户端使用最新分配的3DES私钥解密返回结果,并保存所述3DES秘钥对;所述客户端 使用所述分配的3DES公钥加密请求参数,发起业务请求到平台;
所述平台使用用户对应所述3DES私钥解密参数,业务处理后,若不是流程的最后一步,分配所述3DES秘钥对,用所述对应的3DES公钥加密返回数据到客户端;
所述客户端使用所述3DES私钥解密返回结果,若有下一步的秘钥对,则保存所述3DES私钥解密返回结果。
4.一种基于RSA和3DES的密钥管理系统,其特征在于,包括:平台、客户端;
所述平台,用于分配公钥加密算法RSA秘钥给所述客户端;
所述客户端,用于采用所述分配的公钥加密算法RSA公钥加密,公钥加密算法RSA解密,获取动态的三重数据加密算法块密码3DES秘钥对,保证三重数据加密算法块密码3DES的秘钥分发安全;和用于采用三重数据加密算法块密码3DES秘钥对业务数据进行加解密的方式,访问业务接口,保证业务接口加密效率和数据安全;以及采用三重数据加密算法块密码3DES秘钥对业务接口进行解密,在无法解密或三重数据加密算法块密码3DES秘钥无效时,获取动态的三重数据加密算法块密码3DES秘钥;
所述平台,用于分 配公钥加密算法RSA秘钥给所述客户端,包括:
所述平台,用于静态分配公钥加密算法RSA秘钥给所述客户端;还包括:所述客户端,用于获取授权接口,用RSA公钥加密请求参数,并发送所述RSA公钥加密请 求参数到所述平台;
所述平台,用于接收所述RSA公钥加密请求参数,用RSA私钥解密所述参数,验证所述客户端国际移动装备辨识码IMEI和接口信息后,分配3DES秘钥对和会话密钥key,返回所述3DES秘钥对和会话密钥key数据加密信息到所述客户端;
所述客户端,还用于用RAS私钥解密所述返回的结果,并保存3DES秘钥对。
5.如权利要求4所述的基于RSA和3DES的密钥管理系统,其特征在于,所述基于RSA 和3DES的密钥管理系统,还包括:
所述客户端,用于使用分配的3DES公钥请求加密参数,将所述加密参数的请求发送给到所述平台,发起业务请求;
所述平台,用于接收所述加密参数的请求,使用用户对应的3DES私钥解密参数,业务处理后,用对应的3DES公钥加密返回数据,和返回所述用对应的3DES公钥加密信息到所述客户端;
所述客户端,还用于使用分配的3DES私钥解密所述返回结果即解密所述用对应的3DES公钥加密信息。
6.如权利要求4所述的基于RSA和3DES的密钥管理系统,其特征在于,所述基于RSA 和3DES的密钥管理系统,还包括:
所述客户端,用于使用分配的3DES公钥加密请求参数,发起业务请求到所述平台;
所述平台,用于使用用户对应的3DES私钥解密参数,业务处理后,分配所述3DES秘钥对,用所述对应的3DES公钥加密返回数据到所述客户端;
所述客户端,还用于使用最新分配的3DES私钥解密返回结果,并保存该3DES秘钥对;和用于 使用所述分配的3DES公钥加密请求参数,发起业务请求到所述平台;
所述平台,还用于使用用户对应所述3DES私钥解密参数,业务处理后,若不是流程的最后一步,分配所述3DES秘钥对,用所述对应的3DES公钥加密返回数据到所述客户端;
所述客户端,还用于使用所述3DES私钥解密返回结果,若有下一步的秘钥对,则保存所述3DES私钥解密返回结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611031079.XA CN108092761B (zh) | 2016-11-22 | 2016-11-22 | 一种基于rsa和3des的密钥管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611031079.XA CN108092761B (zh) | 2016-11-22 | 2016-11-22 | 一种基于rsa和3des的密钥管理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108092761A CN108092761A (zh) | 2018-05-29 |
CN108092761B true CN108092761B (zh) | 2021-06-11 |
Family
ID=62169776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611031079.XA Active CN108092761B (zh) | 2016-11-22 | 2016-11-22 | 一种基于rsa和3des的密钥管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108092761B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109245891A (zh) * | 2018-09-13 | 2019-01-18 | 国云科技股份有限公司 | 一种基于rsa算法的随机密钥生成方法 |
CN110147656B (zh) * | 2019-05-10 | 2020-10-30 | 重庆迅燕科技有限公司 | 一种Node.js的代码加密及底层运行时解密办法 |
CN110381114B (zh) * | 2019-06-14 | 2022-08-23 | 平安科技(深圳)有限公司 | 接口请求参数的处理方法、装置、终端设备及介质 |
CN113158210A (zh) * | 2021-04-21 | 2021-07-23 | 建信金融科技有限责任公司 | 数据库加密方法及装置 |
CN113489706B (zh) * | 2021-06-30 | 2023-10-10 | 北京达佳互联信息技术有限公司 | 一种数据处理方法、装置、系统、设备及存储介质 |
CN113656814A (zh) * | 2021-07-30 | 2021-11-16 | 成都长城开发科技有限公司 | 一种设备秘钥安全管理方法及系统 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7272716B2 (en) * | 2002-08-30 | 2007-09-18 | Sap Aktiengesellschaft | Enterprise secure messaging architecture |
US8014530B2 (en) * | 2006-03-22 | 2011-09-06 | Intel Corporation | Method and apparatus for authenticated, recoverable key distribution with no database secrets |
CN1988539B (zh) * | 2006-11-22 | 2010-06-23 | 夏团利 | 基于无线数字广播通道的分类内容有偿分发的系统和方法 |
SG147345A1 (en) * | 2007-05-03 | 2008-11-28 | Ezypay Pte Ltd | System and method for secured data transfer over a network from a mobile device |
CN101964793A (zh) * | 2010-10-08 | 2011-02-02 | 上海银联电子支付服务有限公司 | 终端和服务器间的数据传输方法及系统、签到和支付方法 |
WO2013060695A1 (en) * | 2011-10-24 | 2013-05-02 | Koninklijke Kpn N.V. | Secure distribution of content |
CN102833253B (zh) * | 2012-08-29 | 2015-09-16 | 五八同城信息技术有限公司 | 建立客户端与服务器安全连接的方法及服务器 |
CN103401678A (zh) * | 2013-07-30 | 2013-11-20 | 成都卫士通信息产业股份有限公司 | 一种保障物联网数据传输安全的方法 |
CN104811451A (zh) * | 2015-04-24 | 2015-07-29 | 深圳市墨麟科技有限公司 | 登陆链接方法及系统 |
CN105515762A (zh) * | 2016-01-28 | 2016-04-20 | 中山市倍能照明科技有限公司 | 一种基于rsa和aes加密算法的加密系统及加密方法 |
-
2016
- 2016-11-22 CN CN201611031079.XA patent/CN108092761B/zh active Active
Non-Patent Citations (2)
Title |
---|
Hardware Acceleration for Cryptography Algorithms by Hotspot Detection;Jed Kao-Tung Chang ect.;《International Conference on Grid and Pervasive Computing》;20131231;全文 * |
基于DES和RSA的混合加密算法研究与设计;翁云翔;《电子设计工程》;20160905;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108092761A (zh) | 2018-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108092761B (zh) | 一种基于rsa和3des的密钥管理方法及系统 | |
CN110855671B (zh) | 一种可信计算方法和系统 | |
Bhardwaj et al. | Security algorithms for cloud computing | |
US9852300B2 (en) | Secure audit logging | |
WO2017020452A1 (zh) | 认证方法和认证系统 | |
KR20200127264A (ko) | 데이터 송신 방법, 장치 및 시스템 | |
TWI791050B (zh) | 資料傳輸方法及系統 | |
CN109902494A (zh) | 数据加密存储方法、装置,以及文件存储系统 | |
CN106060078B (zh) | 应用于云平台的用户信息加密方法、注册方法及验证方法 | |
CN204360381U (zh) | 移动设备 | |
WO2016086490A1 (zh) | 基于密钥分散运算实现网络电子身份标识信息保护的方法 | |
CN107465665A (zh) | 一种基于指纹识别技术的文件加解密方法 | |
CN105429752A (zh) | 一种云环境下用户密钥的处理方法及系统 | |
CN105282165A (zh) | 一种云计算下数据存储的方法及装置 | |
CN105812366A (zh) | 服务器、反爬虫系统和反爬虫验证方法 | |
CN105447715A (zh) | 用于与第三方合作的防盗刷电子优惠券的方法和装置 | |
CN105915537A (zh) | 一种token生成、校验方法及验证服务器 | |
CN114338247B (zh) | 数据传输方法和装置、电子设备、存储介质和程序产品 | |
CN102404337A (zh) | 数据加密方法和装置 | |
CN117240625B (zh) | 一种涉及防篡改的数据处理方法、装置及电子设备 | |
Selvamani et al. | A review on cloud data security and its mitigation techniques | |
CN107577958A (zh) | 去隐私化开放方法及装置、去隐私数据回溯方法及装置 | |
Shen et al. | SecDM: Securing data migration between cloud storage systems | |
CN116743470A (zh) | 业务数据加密处理方法及装置 | |
CN110035035B (zh) | 一种单点登录的二次认证方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |