上岸认证、web api接口挪用、付出接口挪用等场所常常涉及到:md5、sh、 rsa等算法

PHP-RSA
简介

github 地点 https://github.com/lmxdawn/PH…

现实项目中的上岸认证、web api接口挪用、付出接口挪用等场所常常涉及到:md5、sh、 rsa等算法。
各大银行接口中常常运用MD5算法对挪用接口参数举行署名防改动。

假如你和我有一样的题目 :

web api挪用认证中,客户端和服务端经由过程雷同的公钥对提交参数举行MD5加密,举行考证。但
2014年中国山东大学的王小云传授宣布破译了MD5、HAVAL-128、 MD4和RIPEMD算法的报告。经由过程加
速的杂凑与冒犯要领破译了MD5算法,MD5还平安吗?

RSA定义:

RSA为公钥加密体系体例:

A.乙方天生两把密钥(公钥和私钥)。公钥是公然的,任何人都可以取得,私钥则是保密的。

B.甲方猎取乙方的公钥,然后用它对信息加密。

C.乙方获得加密后的信息,用私钥解密。

RSA运用:

web 端 见 test_rsa.html
php 端 见 test_rsa.php

RSA特性:
A.便于明白,运用广泛。

RSA算法是第一个能同时用于加密和数字署名的算法,也易于明白和操纵。 RSA是被研讨得最广泛的公钥算法,从提出到当今的三十多年里,阅历了种种进击的磨练, 逐步为人们接收,广泛认为是现在最优异的公钥计划之一。

B.瑕玷与不足:

加密和解密消费时间长、速度慢,只合适对少许数据举行加密。

为进步保密强度,RSA密钥最少为500位长,平常引荐运用1024位。这就使加密的盘算量很大。 为削减盘算量,在传送信息时,常采纳传统加密要领与公然密钥加密要领相结合的体式格局, 即信息采纳革新的DES或IDEA对话密钥加密,然后运用RSA密钥加密对话密钥和信息择要。 对方收到信息后,用差别的密钥解密并可查对信息择要。

须要原型东西:

OpenSSL下载地点:http://slproweb.com/products/…

装置OpenSSL
    随便装置到哪里

点击OpenSLL的bin目录下的 openssl.exe 举行私钥和公钥的天生
    天生私钥
    genrsa -out rsa_private_key.pem 1024
    天生公钥
    rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

将临盆的私钥、公钥拷贝到你的PHP项目中

开启PHP的OpenSSL扩大

将php.ini中的extension=php_openssl.dll开启(去掉;)
    原文作者:lmxdawn
    原文地址: https://segmentfault.com/a/1190000007858353
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞