nodejs中https和ca证书
绝大部分demo和姿势都可以在nodejs官网查看到。可以多多查阅
自签名的证书生成(不推荐2333)
openssl genrsa -out server.key 2048//这是秘钥
openssl req -new -sha256 -key server.key -out csr.pem//这好像是签名请求?没在意
openssl x509 -req -in csr.pem -signkey server.key -out cert.pem//这是证书
以下代码来自官网demo改编
https 服务器端 servers
// curl -k https://localhost:8000/const https = require('https');
const fs = require('fs');const options = {key: fs.readFileSync('./ssl/server.pem'),//这是我在ssl目录下生成的server.key改名为server.pemcert: fs.readFileSync('./ssl/cert.pem'),requestCert:true, //请求客户端证书rejectUnauthorized:false //如果没有请求到客户端来自信任CA颁发的证书,拒绝客户端的连接
};https.createServer(options, (req, res) => {res.writeHead(200);console.log(req);console.log(typeof req);console.log(req.method);res.end('hello world\n');
}).listen(9000);console.log("server https is running 9000");
//接下来是https post请求demo 以验证证书,其实可以此时可以用浏览器访问你的端口,注意看浏览器栏,左边一般有个红色三角感叹号,那就是说有个证书,但是证书不规范233
//以下程序也来自官方demo改编
const https = require('https');
const fs = require('fs');
const querystring = require("querystring");const postData = querystring.stringify({'msg': 'Hello World!'
});const options = {hostname: '127.0.0.1',port: 9000,path: '/',method: 'POST',requestCert:true, //请求客户端证书rejectUnauthorized: false, //不拒绝不受信任的证书headers: {'Content-Type': 'application/x-www-form-urlencoded','Content-Length': Buffer.byteLength(postData)}
};const req = https.request(options, (res) => {console.log(`STATUS: ${res.statusCode}`);console.log(`HEADERS: ${JSON.stringify(res.headers)}`);res.setEncoding('utf8');res.on('data', (chunk) => {console.log(`BODY: ${chunk}`);});res.on('end', () => {console.log('No more data in response.');});
});req.on('error', (e) => {console.error(`problem with request: ${e.message}`);
});// write data to request body
req.write(postData);
req.end();
nodejs中https和ca证书相关推荐
- HTTP HTTPS 创建CA证书
目录 http 1.安装apache环境依赖 2.基本设置 3.配置主文件 4.配置完重启HTTP生效 https的实现 1.安装专门的mod_ssl模块 2.申请CA证书 3.编辑.conf配置文件 ...
- https及ca证书
非对称算法个人理解主要解决两个问题,无论是https协议中用到的还是区块链交易中使用的: 1.通过私钥加密,公钥解密,证明身份,比如证明消息是由某个网站发出的: 2.通过公钥加密,私钥解密,进行安全传 ...
- HTTPS及CA证书详解
https目录 HTTPS 术语解释 1. HTTP 2. SSL/TLS(Secure sockets Layer/transport layer security) 3. HTTPS 4. 对称加 ...
- php微信小程序项目本地调试https和CA证书问题
项目场景: 提示:这里简述项目相关背景: 微信小程序和PHP项目本地调试 1.问题描述 "不在以下 request 合法域名列表中"导致无法进行. 解决方案: 提示:右上角详情按钮 ...
- Https的CA证书是如何验证其有效性的?
一.证书作用 证书验证的过程是使用非对称加密的,客户端对服务器端发起请求,服务器返回一个证书,客户端验证这个证书的合法性,如果这个证书是合法的,那么就生成一个随机值,利用这个随机值作为对称加密的钥匙 ...
- 本地局域网HTTPS解决方案 CA证书
本地局域网HTTPS访问web站点解决方案 windows平台安装mkcert linux平台安装mkcert 使用证书 windows平台安装mkcert 安装choco powershell管理员 ...
- Android https 自签名和CA证书验证(基于OkHttp)
Android HTTPS自签名和CA证书验证(基于OkHttp) HTTPS介绍 CA证书 自签名证书 问题描述 域名校验 OkHttp设置 总结 HTTPS介绍 HTTPS是一种通过计算机网络进行 ...
- php 微信支付 ca证书,微信公众号红包接口开发PHP开发 CA证书出错,请登陆微信支付商户平台下载证书...
微信红包接口调试过程中一直提示"CA证书出错,请登陆微信支付商户平台下载证书",经反复调试,大致解决方法如下: 1.首先确保CA证书的路径是否正确,一定得是绝对路径,因为是PHP开 ...
- Autosar之自签名证书与CA证书
文章目录 一.安全传输 1.框架 2.如何实现传输安全? 3. 对称加密和非对称加密的区别? 4.伪随机数和真随机数 5.数字签名 -- 验证完整性 & 认证数据来源 6.为什么使用摘要算法的 ...
最新文章
- Spring Boot 工程集成全局唯一ID生成器 Vesta
- JavaScript的基本使用
- Spanning-tree Potocol(整理)
- html5图片自动翻转特效,CSS3带动态阴影效果的3D图片翻转特效
- 肖仰华 | 知识图谱研究的回顾与展望
- java 栈 先进后出_栈先进后出,堆先进先出
- 苹果手机mov文件如何复制到电脑_如何在手机上访问电脑上的文件(超详细步骤) iPhone版...
- [C++] - 面向对象-院校管理系统
- Navicat 添加唯一索引
- newifi3刷机 php,newifi3breed解锁新路由3刷机免解锁刷breed详细方法老毛子Padavan固件...
- 计算机里电子 邮件格式,邮箱格式怎么写?
- Thrift 入门教程【转】
- WebStorm下载与安装
- 新颖的自我介绍_新颖一分钟自我介绍4篇
- 如何从根本上防止服务器被攻击
- 操作系统------资源分配图化简
- 使用Excel数据分析工具进行多元线性回归分析
- 【夏季美女们穿的“清凉”容易引男生的狼眼】
- 基于JavaWeb的公司人才招聘系统 课程论文+流程图及源文件+项目源码
- vue+element-ui+js页面打印(打印elementui的table)