BC-介绍

“Legion of the Bouncy Castle”组织开发的Bouncy Castle包,是一个纯JAVA实现的加密算法包,发布遵循“MIT X Consortium license”,只要在分发软件时包含该许可的副本,即可以无限制地获得该软件及其文档,包括使用、拷贝、修改、合并、出版、分发、再分发,甚至出售软件。
         Bouncy Castle加密包提供的是轻量级的API,这样的设计使得它适合于所有遵循JCE框架的应用环境,包括J2ME。其包含的API大致如下:
        轻量级加密算法的JAVA实现
        一个JCE和JCA的provider
        一个纯JCE 1.2.1的实现
        一个读写ASN.1编码对象的库
        一个版本v1和v3的X.509证书以及PKCS12文件的生成器
        一个S/MIME 和 CMS (PKCS7)的生成/处理器
        一个OCSP (RFC 2560)的生成/处理器
        一个OpenPGP (RFC 2440)的生成/处理器
        一个可供JDK1.4和SUN JCE使用的签名后的jar
        由于 Bouncy Castle Crypto加密包遵循并实现了JCE规范;提供了大量的密码算法,包括最新的椭圆曲线算法、AES等等;集成了对ASN.1和X.509证书以及属性证书的支持,所以本文使用Bouncy Castle Crypto作为提供程序。
       “Legion of the Bouncy Castle”组织及Bouncy Castle Crypto包的官方网站是http://www.bouncycastle.org,可以在此了解加密包开发的最新进展及下载最近的发布版本。

Bouncy Castle加密实现的API包含在一系列的名字空间中,主要的有:
       org.bouncycastle.asn1                               ASN1编码对象库
       org.bouncycastle.bcpg                            OpenPGP/BCPG的生成/处理
       org.bouncycastle.cms                                 CMS(PKCS7) 的生成/处理
       org.bouncycastle.crypto                             密码术的一些概念类(接口)
       org.bouncycastle.jce                                          JCE的实现
       org.bouncycastle.mail.smime                 S/MIME的生成/处理
       org.bouncycastle.ocsp                        OCSP (RFC 2560)的生成/处理
       org.bouncycastle.openpgp               OpenPGP (RFC 2440)的生成/处理
       org.bouncycastle.openssl                          OpenSSL文件的读取
其中:

       org.bouncycastle.jce

       org.bouncycastle.jce.provider
是所有算法的提供者,实现了各种对称、非对称算法,摘要算法,以及X.509证书和PKCS12文件的生成。

国密算法—SM2介绍及基于BC的实现 国密算法—SM2介绍及基于BC的实现 文章目录国密算法—SM2介绍及基于BC的实现简介私钥公钥数据格式密钥数据格式私钥数据格式公钥数据格式加密数据格式签名数据格式计算过程生成密钥加密解密预处理预处理1预处理2数字签名签名验证Java基于BC实现SM2加解密 简介 SM2密码算法是一种椭圆(非对称)密码算法 加密强度:256位(私钥长度); 公私钥长度:公钥长度为64字节(512位),私钥32字节(256位); 支持签名最大数据量及签名结果长度:最大签名数据量长度无限制;签名结果为64字节(但由于签名后会做 阅读详情

相关推荐

NB-IoT BC260Y 介绍篇①初识NB-IoT及模块的介绍

1、NB-IoT介绍2、BC260Y模块介绍3、OpenCPU介绍4、BC260Y模块引脚分配5、开发资源NB-IoT是什么呢?回答这个问题,先百度一下我们从2G到5G,我们希望它越来越快,你最关注的指标应该是它的网速和信号(覆盖率),但是物联网关注的指标就不是网速了,而是低功耗,信号(覆盖率),对于网速,反而要求没有那么高。所以行业内有了LPWAN这个概念,而LPWAN,Low Power Wide Area Network,低功耗广域网。名字里就有它的两个最重要的特点:低功耗、广覆盖。

lu330274924的博客 2351

Bouncy Castle加密包的分析

“Legion of the Bouncy Castle”组织开发的Bouncy Castle包,是一个纯JAVA实现的加密算法包,发布遵循“MIT X Consortium license”,只要在分发软件时包含该许可的副本,即可以无限制地获得该软件及其文档,包括使用、拷贝、修改、合并、出版、分发、再分发,甚至出售软件。          Bouncy Castle加密包提供的是轻量级的API

永远的夜 4620

bouncycastle

网上找了一个aes加解密例子,但是缺少Security.addProvider(new BouncyCastleProvider());经过搜索是缺少bcprov-jdk15on-151.jar和commons-codec-1.15.jar

BouncyCastle

我们知道,Java标准库提供了一系列常用的哈希算法。 但如果我们要用的某种算法,Java标准库没有提供怎么办? 方法一:自己写一个,难度很大; 方法二:找一个现成的第三方库,直接使用。 BouncyCastle就是一个提供了很多哈希算法和加密算法的第三方库。它提供了Java标准库没有的一些算法,例如,RipeMD160哈希算法。 我们来看一下如何使用BouncyCastle这个第三方提供的算法。 首先,我们必须把BouncyCastle提供的jar包放到classpath中。这个jar包就是bcprov-j

stay hungry ! stay foolish! 721

bouncycastle1.59 帮助文档(包含html源文件制作工具)

从官网(http://www.bouncycastle.org/docs/pkixdocs1.4/)获取的完整页面,然后制作而成的,内容可用,制作工具可用,工具使用方式可百度

Java平台BouncyCastleUtility工具包

依赖:bcprov-jdk15to18-171.jar, bcpkix-jdk15to18-171.jar 内容:封装了基于BouncyCastle库的签名工具类。用于处理Java平台上,使用ECDSA秘钥生成算法,指定secp256r1作为ECC曲线生成密钥对。并提供了使用SHA256进行私钥签名,及生成X.509v3格式的签名证书。 适用于:ISO15118-2中描述的证书及签名要求。

BC1.2快充协议介绍

BC1.2定义 BC1.2 (Battery Charging v1.2)是USB-IF下属的BC(Battery Charging)小组制定的协议,主要用于规范电池充电的需求,该协议最早基于USB2.0协议来实现。 BC1.2充电端口 USB2.0协议规定外设从USB充电器抽取电流的最大值为500mA,500mA的电流限制无法满足日益增长的快充需求。因此,BC1.2引入了充电端口识别...

SlamDunk的博客 7万+

bcmail-jdk14-1.38-API文档-中英对照版.zip

赠送jar包:bcmail-jdk14-1.38.jar; 赠送原API文档:bcmail-jdk14-1.38-javadoc.jar; 赠送源代码:bcmail-jdk14-1.38-sources.jar; 赠送Maven依赖信息文件:bcmail-jdk14-1.38.pom; 包含翻译后的API文档:bcmail-jdk14-1.38-javadoc-API文档-中文(简体)-英语-对照版.zip; Maven坐标:org.bouncycastle:bcmail-jdk14:1.38; 标签:bouncycastle、bcmail、jdk14、中英对照文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

bc命令介绍

bc命令介绍: let和expr不能处理浮点运算,而bc命令恰好弥补了这一点,bc提供精确的复杂计算功能,它是linux一个重要的工具,bc往往使用在管道里。 bc使用方法如下:  Variable=`echo “OPTIONS;OPERATIONS” | bc` Shell 实例1: [root@ChangerLee 运算比较符]#cat bc_v1.sh #!/bin/bash

JaysenLeo 2461

链家二手房信息爬取(内附完整代码)

链家二手房信息爬取1.简介2. 爬虫思路2.1 网页分析2.2 详情页分析2.3 不同页码的爬取2.4 解决链家只显示100页数据2.5 简单的反爬与进度条显示3. 总结 1.简介   最近帮同学爬取了链家在售二手房的信息,这是本人学习爬虫以来爬取数据最多的一次,就想着写个博客记录一下。   本次爬虫是利用python+jupyter notebook实现的,用到的第三方库如下: import pandas as pd # 数据存储 import requests # 网页内容获取 import re #

qq_46256922的博客 3万+

游戏开发实战:5种AOI算法对比(九宫格 vs 灯塔 vs 十字链表)

本文深入对比了游戏开发中五种主流AOI算法(九宫格、灯塔、十字链表等)的性能与适用场景,帮助开发者根据项目规模选择最优解决方案。通过详细的技术分析和实战数据,揭示不同算法在万人同屏等极端场景下的表现差异,为MMORPG等大型多人在线游戏提供关键性能优化指南。

weixin_29268385的博客 474

Linux bc介绍

bc也支持用户自定义函数。例如,定义一个计算平方的函数:shellsquare(4) # 输出16bc命令是一个功能强大的计算器,它填补了简单计算器功能不足的空白。无论是进行简单的算术操作,还是需要复杂的数学函数计算,甚至编写完整的数学计算脚本,bc都能够有效地满足需求,是每个涉及数学计算的行业专业人士必备的工具。来源: Transcendent文章作者: Gavin Wang文章链接:bc介绍 | Transcendent本文章著作权归作者所有,任何形式的转载都请注明出处。

Gavin Blog 1371

学习STM32的流体水位传感器

引言: 流体水位传感器是一种常用于测量液体水位的设备,广泛应用于水位监测、液位控制和流量计量等领域。STM32是一款功能强大的单片机,具有丰富的外设和灵活的编程能力,非常适合用于流体水位传感器的开发。本文将介绍如何使用STM32开发板与流体水位传感器进行连接和通信,并通过编写代码实现水位的测量和显示。五、总结: 通过以上的代码示例,我们可以实现使用STM32开发板与流体水位传感器进行连接和通信的功能。三、编写代码: 以下是使用STM32CubeIDE编写的示例代码,实现了读取流体水位传感器的功能。

xiaoalla的博客 740

BC1.2 SDP/CDP/DCP介绍

注意:此图像中的智能手机在DCP握手后将D+/D-的电压设置为共模电压。在这种情况下,这是由手机驱动的(非常大的制造商的手机),目前尚不清楚为什么这样做。此外,Microchip的集线器还支持一种特殊的厂商定义的充电模式,Microchip将其称为“SE1”。还要注意,设备可能吸收最大允许量的电流,但充电器无法强制设备吸收超出其可吸收的量。这是USB规范的扩展,定义了在USB2和USB3端口的普通500mA或900mA电流限制之上为设备充电的机制。探测D+和D-数据线,观察设备连接后立即发生的短脉冲。

DL_62532的专栏 1万+

数学建模传染病模型_【数学建模】之传染病模型

点击【拇指笔记】,关注我的公众号。SE模型缺点:没有考虑接触到的人中还有一部分病人,所以所有人并不会全部被感染。建立模型:已感染人数(病人)每个病人每天有效接触(足以使人致病)人数为根据(1)(2)可以建立模型:等式两边同时除以\Delta t由导数定义有同时,取\Delta t = 1天由(1)(5)两式可得最终的模型:Logistic模型缺点:区分已感染者(病人)和未感染者(健康人)...

weixin_39590453的博客 2228

Visual Studio Git 使用指南

Visual Studio 2022深度集成了Git功能,提供了直观的图形界面管理源代码。本文详细介绍了VS中Git的使用方法:从环境准备、克隆/创建仓库开始,重点讲解了"Git更改"窗口的日常操作,包括查看修改、暂存文件、提交推送等。同时涵盖了分支管理、查看历史、解决冲突等核心功能,以及储藏、重置等高级操作。文章还提供了实用技巧,如提交规范、频繁提交等最佳实践。VS的Git集成覆盖了日常开发需求,图形界面与命令行可互补使用,适合各层次开发者高效管理代码版本。

guigenyi的专栏 1569

BC1.2协议介绍

由于USB接口供电的需求,其充电标准规范Battery Charging Specification-1.2(BC1.2)在2010年颁布,BC1.2规范规定了三种不同类型的USB接口:标准下行端口(Standard Downstream Port,SDP)、 专用充电端口(Dedicated Charging Port,DCP)和充电下行端口(Charging Downstream Port,CDP),以及识别应用端口类型的协议。PC的典型端口,这种端口的D+和D-上都有下拉电阻。最大电流为500mA。

wjw1105795734的博客 2703

车载 ECU 中的 Safety Linux 详解

车载 ECU 中的 Safety Linux 详解

天赐好车的博客 312

linux的bc命令介绍

bc命令是一种支持任意精度的交互执行的计算器语言。bash内置了对整数四则运算的支持,但是并不支持浮点运算,而bc命令可以很方便的进行浮点运算,当然整数运算也不再话下。 算术操作高级运算bc命令它可以执行浮点运算和一些高级函数; 设置精度,参数scale=2是将bc输出结果的小数位设置为2位; obase设置进制转换; 计算平方和平方根。 Refer to: ...

weixin_30530339的博客 94

基于Simulink的加速度计振动分析:单自由度质量-弹簧-阻尼系统

摘要:基于Simulink的加速度计单自由度振动分析 本文研究了加速度计的单自由度(SDOF)质量-弹簧-阻尼系统模型,通过MATLAB/Simulink平台建立了完整的振动分析仿真系统。文章详细阐述了理论建模过程,推导了系统运动微分方程和传递函数,并提供了Simulink模型搭建的具体步骤和MATLAB实现代码。研究通过正弦扫频、随机振动和冲击响应三种典型输入信号,分析了系统的幅频特性、相频特性及时域响应,验证了加速度计的工作机理。仿真结果表明,该方法能有效模拟加速度计在不同激励条件下的动态特性,为传感器

AI的内部世界的博客 163

ZW3D 二次开发-制作插件

1.Windows 7 SP1 或 Windows 10 或 Windows 11(推荐 Windows 11)2.Visual studio 2017-2022 (或 C/C++的任何其他集成开发环境)(推荐 Visual studio 2022)3.ZW3D 2023 或以上版本(建议使用与 ZW3D 一致的 API 的版本)4.Qt5.9.7(for Windows)博主学习使用环境的是:Windows 11 Version 24H2 + Visual studio 2022 + Qt5.9.7(fo

fhqiwmc的博客 812

bc4j的简单介绍

在OAF开发中你会频繁遇到BC4J这个字眼,Business Component for Java。其字面意思翻译过来就是“基于Java技术的业务组件模型”。对初级的OAF二次开发人员来说,我建议你可以先知道有这个概念即可,不需要深究其实现架构、设计理念等,待你有一定的开发经验后,再去学习BC4J深入一些的知识,才能理论联系实践,事半功倍。现在你只需要知道,OAF这个框架的基础是在BC

darkhorsefly的专栏 3231

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

移远NB-IOT模块BC660K介绍

​ 本文介绍一下全球通信模块龙头移远通信,推出的新一代的小尺寸的全球通用的NB-IOT模块BC660K-GK。 ​

qq_42713675的博客 634

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

上一篇: Oracle创建DBLINK
下一篇: ubuntu速度慢的原因之内存和swap分区
wmljava82278040
博客等级 码龄19年 1粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值