前言OpenSSL是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。OpenSSL本身是一个基于C语言的库,但是它也提供一个名为openssl的可执行程序来实现它所具有的功能。 可以通过OpenSSL官网下载源码,Linux和MacOS系统configure一下,make一下就OK了,相信你会编译了。编译后源码根目录下
红帽是一个开源的Linux操作系统发行版,其核心是基于Linux内核和GNU工具的。在红帽系统中,有一个非常重要的功能,就是数字签名。数字签名可以用来验证数据的完整性和真实性,以及确认数据的来源。在红帽系统中,数字签名的生成和验证是由OpenSSL库来实现的。 OpenSSL是一个开源的加密工具库,提供了一系列加密算法和功能,用于数据的加密和解密、数字签名的生成和验证等。在红帽系统中,OpenS
原创 3月前
22阅读
lua 5.2 正式发布了,对于 lua 语言本身的修改,重中之重就是对 environment 这个概念的修改。可以说, 5.1 以前的 environment 已经没有了。environment 对于制造一个安全的沙盒(或是实现 DSL)是一个很重要的语言特性,我以前很喜欢使用,但也很容易用错。这次的修改我认为是一个谨慎的决定,并使得 lua 语言更为精简和严谨了。我这样理解 5.2 中的
转载 3月前
45阅读
安全加密C语言库OpenSSL,在Android中服务器和客户端之间的签名验证和数据加密通信等。OpenSSL系列文章:最近有这么一个需求,要对接口进行签名验证以防止被刷。开始想到了在Java实现HmacSHA1签名,但由于Java代码较容易反编译直接获取秘钥,而否定了这个方案。为了解决这个问题,把实现签名的逻辑代码用C/C++来编写,编译成xxx.so库,大大提高了反编译的门槛,从而降低了被反
实战篇-OpenSSL之TripleDES加密算法-ECB模式一、TripleDES简介二、ECB模式1、命令行操作2、函数说明3、编程实现(1)特别注意(2)实现ECB模式加解密(3)测试代码 一、TripleDES简介3DES又称Triple DES,是DES加密算法的一种模式,它使用2条不同的56位的密钥对数据进行三次加密。数据加密标准(DES)是美国的一种由来已久的加密标准,它使用对称密
在互联网数据传输过程中,数据的安全私密性是及其重要的,所以就有数据的加密和解密过程;加密方式一、对称加密:特性:1、加密方/解密方使用同一个口令2、将原文分割成固定大小的数据块,对这些块进行加密,数据块前后会有关联关系缺陷:1、密钥无法交换2、无法进行身份验证3、无法保证数据完整性加密算法:DES(56bits):数据加密标准 AES(128):高级加密标准3DES:相当于对每个数据块应用三次DE
Java实现OpenSSL通信 ## 引言 在网络通信中,OpenSSL是一种常用的加密和安全通信协议。本文将教会你如何使用Java实现OpenSSL通信。首先,让我们了解一下整个过程的流程,然后逐步介绍每一步需要做什么以及相应的代码。 ## 流程图 ```mermaid graph TB A[开始] --> B[生成密钥对] B --> C[生成证书请求] C --> D[签发证书] D -
原创 7月前
128阅读
RSA Key Converter 在线转换工具:https://superdry.apphb.com/tools/online-rsa-key-converter PHP 代码: / rsa 私钥复制到这里 $private_key = <<<EOD PASTE YOUR RSA PRIVATE ...
转载 2021-07-15 12:37:00
452阅读
2评论
一、前言当有重要的敏感数据的时候,给文件和目录额外加一层保护是至关重要的,特别是当需要通过网络与他人传输数据的时候。 给文件加密有多种命令,如gzexe、tar、shc 。在这里我来介绍一下利用tar和openssl实现加密,并用脚本实现它,以后实现运行一下脚本就行了。 这里介绍使用自己随便写的key文件加解密 和 公钥私钥加解密。二、openssl 命令OpenSSL 是一个开源项目,其组成主
转载 7月前
0阅读
所里有个项目客户端是Java开发的,服务端是C开发的,之间使用了SM2算法进行密钥交换。 Java端是在网上找的一个比较流行的基于BC的SM2实现(https://github.com/PopezLotado/SM2Java),依赖的bcprov-jdk15on,版本1.56。C端是用的OpenSSL。 服务端和客户端联调时发现了很多问题,SM2算法的公钥加解密一直没法调通,签名验签也不通,但Ja
转载 2023-08-04 23:33:11
235阅读
说明   1.java生成的公私钥格式为 pkcs8, 而openssl默认生成的公私钥格式为 pkcs1,两者的密钥实际上是不能直接互用的    2.java采用的rsa默认补齐方式是pkcs1, 因此互用的时候需要将openssl中的补齐方式设置为RSA_PKCS1_PADDING  &nbsp
转载 2023-08-14 10:50:33
402阅读
相关代码: #include <stdio.h>    int sign( int x ); int main(){    int x;     scanf("%d", &x);    printf("sign(%d) = %d\n", x, sign(x));     return 0;} int sign( int x ){  if(x>0){    return
原创 2021-07-11 21:32:22
10000+阅读
在做支付宝在线支付开发过程中,遇到报错:Call to und
转载 2022-07-19 19:35:36
86阅读
事务处理事务基本原理如果不开启事务,执行一条sql,马上会持久化数据。可见:默认的mysql对sql语句的执行是自动提交的!如果开启了事务,就是关闭了自动提交的功能,改成了commit执行自动提交  自动提交的特征是保存在服务器的一个叫做autocommit的一个变量内。使用set 变量名=变量值的形式就可以完成修改(set autocommit=0;),此时就关闭了自动提交功能,需要手动执行co
什么是openSSLopenSSL是一个开放源代码的SSL协议的产品实现,它采用C语言作为开发语言,具备了跨系统的性能,支持linux、windows、mac等多种平台。openSSL最早的版本在1995年发布,1998年后开始由openSSL项目组维护和开发。目前,openSSL已经得到了广泛的应用,许多类型的软件中的安全部分都使用了openSSL的库,如Apache服务器、linux安全模块
转载 10月前
63阅读
# 在线Java签名实现指南 作为一名经验丰富的开发者,我很高兴能够指导你如何实现“在线Java签名”。在线签名是一种将数字签名应用于文件或数据的过程,以确保其完整性和真实性。以下是实现在线Java签名的详细步骤和代码示例。 ## 步骤流程 以下是实现在线Java签名的步骤流程: | 步骤 | 描述 | | --- | --- | | 1 | 导入所需的库 | | 2 | 生成密钥对 |
原创 1月前
22阅读
在Linux系统中自带openssl工具,加密和解密,可以在Linux上进行。利 openssl工具,用DES、3DES、IDEA、AES等对称算法对文件加密解密,和用RSA非对称算法对文件加密解密。1、对称加密可以用命令man enc 查看所有的加密算法 对于对称算法的加密,命令都比较简单。命令如下加密命令:openssl enc -e 算法 -in 文件a -ou
转载 9月前
167阅读
本文描述的是利用自签CA制作链式证书的步骤,主要是制作中间证书的关键步骤。目前CA证书基本均为链式证书,其主要目的是利用中间证书的特性,既可以保护根证书的密钥安全性,又可以方便进行吊销操作。0x00 制作根证书密钥(root.key):openssl genrsa -aes256 -out root.key 4096参数含义:genrsa:  生成RSA密钥4096: 指定密钥长度命令执
# Java中RSA数字签名的实现 RSA(Rivest–Shamir–Adleman)是一种广泛使用的公钥加密算法,能够确保数据的机密性和完整性。在数字签名的场景中,RSA可以用来验证数据的来源和完整性。本文将介绍如何在Java实现RSA数字签名,并结合代码示例和图示来帮助理解。 ## RSA数字签名的基本原理 数字签名的过程主要包括两个步骤:生成密钥对和签名/验证过程。 1. **生
原创 1月前
20阅读
# Java sign签名 Java中的签名是一种常见的安全机制,用于验证数据的完整性和真实性。它通过将数据与一个密钥进行加密,生成一个唯一的签名,然后通过验证这个签名来判断数据是否被篡改。本文将介绍Java中的签名概念和示例代码,帮助读者理解和应用签名机制。 ## 签名的基本概念 签名的基本原理是使用一个密钥对数据进行加密,生成一个唯一的签名,然后通过验证签名来保证数据的完整性和真实性。在
原创 7月前
57阅读
  • 1
  • 2
  • 3
  • 4
  • 5