最近要在新项目中使用支付宝钱包进行支付,所以要调研对接支付宝的接口,支付宝开放平台采用了RSA安全签名机制,开发者可以通过支付宝   公钥验证消息来源,同时可使用自己的私钥对信息进行加密,所以需要在本机上生成私钥和公钥 ...

由此需要开发者在本地上使用openssl来生成私钥和公钥

由于mac 自带openssl工具,所以不用像windows那样要下载安装openssl工具

生成私钥公钥很简单:只要三句命令就可以搞定

打开openssl : $openssl     =====>>     OpenSSL>

  • genrsa -out rsa_private_key.pem 1024   ======>>    Generating RSA private key, 1024 bit long modulus

                              ..++++++

                              .............++++++          

                              e is 65537 (0x10001)

  • pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM –nocrypt   =======>>

    

Enter Encryption Password:

Verifying - Enter Encryption Password:

-----BEGIN ENCRYPTED PRIVATE KEY-----

MIICoTAbBgkqhkiG9w0BBQMwDgQIB70ErSHm8nACAggABIICgGohYKWaKTEkOJlf

4Lg0rZbnVnCZY2gyFPtu2mEJskQLvtjJWvgqyIGwZG+CcDjurvIhrSH

Q4yz3qOcaywahh6DmXZ1yw+GVyPSiIXC295mnoZo6OIwBu46V5OEPTTpTFLeVpgs

XTAvUN2LXhSXO9TuZKrZG0jujgif/5rT8OcUPV4yrGke0k

KZe9rB0gbaCPxy1GTa3+d6jPX8XqcVRGdsr4YChv2GMpn9XPicD+itbm5/0gqNLk

RwJJ5r4UZCuANXcV8rsE60qi5wlYWdmFu9Mh3UsKER9NzuJPYz/CXXG

OvlU0Gp3s2FfIJwS6lnTJD0PGbgpp+bv1Nyp9R1JH+UgcIKz

4Y6A+np8kVs0uBAN6iGHwEFKq9E73pPEnG

5kBt6OH6kBXPqsnH7h6mdMUxLsqMFG8unjXQr+zovBodDbXjCv6nUpu8+O7pOBI/

z/mczL5auVW+CJBqJPXeqeuw400zi66SJ7a5SDRfiXYJyyT2I3wl9GdAbAdgoChx

tsY61csyWrhIRTdNdbJ7Zck9N2ZgQFOeAPlyiJAYPM3eMUPVkRuXsTLESaKJV8sS

zUyhKeXsO/EdM7HfIDY+GJouJEoNlU2nW2omR9OiFLELgGX4g6afxg5uIx95Xc8J

Gv7xsgtScS7IKzdSaHcUuidPvhMgm3GLEKsLKy9Lz7wN6sTYAPIQPq8/767c2WZA

7RIFGZTOQLWpUNPfdC8mTStPK3F8SPBVGh5KIBl++

nBsTLpc=

-----END ENCRYPTED PRIVATE KEY-----

  • rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem   =======>>>>     writing RSA key

退出openssl:  $exit

生成的文件:

iOS开发--使用OpenSSL生成私钥和公钥的方法的更多相关文章

  1. MAC OS下使用OpenSSL生成私钥和公钥的方法

    MAC OS自带了OpenSSL,所以不用去编译那一坨跟SHIT一样的源码.直接在命令行里使用OPENSSL就可以. 打开命令行工具,然后输入 openssl打开openssl,接着只要三句命令就可以 ...

  2. OpenSSL生成私钥和公钥

    1.生成私钥 -- 生成 RSA 私钥(传统格式的) openssl genrsa -out rsa_private_key.pem 1024 -- 将传统格式的私钥转换成 PKCS#8 格式的(JA ...

  3. 阶段5 3.微服务项目【学成在线】_day16 Spring Security Oauth2_12-SpringSecurityOauth2研究-JWT研究-生成私钥和公钥

    3.6.3 JWT入门 Spring Security 提供对JWT的支持,本节我们使用Spring Security 提供的JwtHelper来创建JWT令牌,校验JWT令牌 等操作. 3.6.3. ...

  4. Linux生成私钥和公钥免密连接

    本文介绍Linux系统生成私钥和公钥进行免密连接,内容比较简单,阅读需要3分钟. 1.大致流程 有时需要从服务器A免密连接到服务器B,这时需要在服务器A生成私钥和公钥,大致过程其实就2步. 1.1 在 ...

  5. ssh-keygen生成私钥和公钥

    ssh-keygen生成私钥和公钥 例: 用户名:root 服务器地址:192.168.1.10 生成:ssh-keygen -t rsa -b 4096 -C“root@192.168.1.10” ...

  6. 使用ssh-keygen生成私钥和公钥

    1.使用ssh-keygen生成私钥和公钥 命令如下: ssh-keygen -t rsassh-keygen -t rsa -C "用户名自取"可以是邮箱 例子: fdipzon ...

  7. IOS开发技巧快速生成二维码

    随着移动互联网的发展,二维码应用非常普遍,各大商场,饭店,水果店 基本都有二维码的身影,那么ios中怎么生成二维码呢? 下面的的程序演示了快速生成二维码的方法: 在ios里面要生成二维码,需要借助一个 ...

  8. iOS开发控制器之间传值的几种小方法

    在IOS开发中或面试中,经常会遇到,两个或者多个控制器之间传值的问题 ,总结的集中方法仅供参考! 问题 :将B控制器中的textField 输入内容,传到A控制器中的label上显示出来,如何传值? ...

  9. 生成私钥、公钥,配置到Git上

    ssh-keygen -t rsa -C "1032671220@qq.com" 输入完毕指令,输入密码.然后会在 /z/.ssh/文件夹下生成一个私钥rsa_id.公钥rsa_p ...

随机推荐

  1. NGUI研究院之UISprite和UITexture浅谈

    NGUI的三大组件,UILabel.UISprite.UITexture,它们三个同时都继承UIWidget.先回到一个很郁闷的话题上,到底是优化DrawCall还是优化内存. UISprite : ...

  2. 浅谈C# String对象

    本文介绍C#中的string是一个引用类型,C# String对象是存放在堆上,而不是堆栈上的,因此,当把一个字符串变量赋给另一个字符串时,会得到对内存中同一个字符串的两个引用. AD:WOT2015 ...

  3. [Xcode 实际操作]九、实用进阶-(25)使用Storyboard(故事版)的约束功能,使项目快速适配各种分辨率的设备

    目录:[Swift]Xcode实际操作 本文将演示使用故事版的约束功能,使项目快速适配各种分辨率的设备. 在项目导航区打开并编辑主故事版[Main.storyboard]. 在当前故事版中,已经存在一 ...

  4. Hexo - CNAME文件在每次部署后就没了

    问题 一般我们会将Hexo博客搭建到Github上,如果在Github上为其配置一个自定义的域名时,会自动在项目仓库根目录下新添加一个CNAME文件.但是这里有个问题,如果将Hexo博客重新部署一遍后 ...

  5. python 函数求两个数的最大公约数和最小公倍数

    1. 求最小公倍数的算法: 最小公倍数  =  两个整数的乘积 /  最大公约数 所以我们首先要求出两个整数的最大公约数, 求两个数的最大公约数思路如下: 2. 求最大公约数算法: 1. 整数A对整数 ...

  6. JAVASCRIPT一维数转化为二维数组

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  7. 选择器 nth-child和 nth-of-type的区别

    <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li&g ...

  8. siege官方文档(译)(二)

    WHY DO I NEED IT? Siege was written for both web developers and web systems administrators. siege是为了 ...

  9. MySQL之select简单使用

    Select * from table_name Select column_name_1,column_name_2 from table_name Select * from student wh ...

  10. Integer一类的比较问题

    总体主要分为两个方面 ①比较的是值 一.基本数据类型与引用数据类型进行比较时,引用数据类型会进行拆箱(自动拆装箱需要在jdk1.5以上),然后与基本数据类型进行值的比较 举例: int i = 12; ...