package org.bouncycastle.pqc.jcajce.provider.test;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.security.KeyFactory;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.SecureRandom;
import java.security.Security;
import java.security.Signature;
import java.security.spec.PKCS8EncodedKeySpec;
import java.security.spec.X509EncodedKeySpec;
import junit.framework.TestCase;
import org.bouncycastle.asn1.ASN1OctetString;
import org.bouncycastle.asn1.pkcs.PrivateKeyInfo;
import org.bouncycastle.asn1.x509.SubjectPublicKeyInfo;
import org.bouncycastle.pqc.jcajce.interfaces.PicnicKey;
import org.bouncycastle.pqc.jcajce.provider.BouncyCastlePQCProvider;
import org.bouncycastle.pqc.jcajce.spec.PicnicParameterSpec;
import org.bouncycastle.util.Arrays;
import org.bouncycastle.util.Pack;
import org.bouncycastle.util.Strings;
import org.bouncycastle.util.encoders.Hex;
public class PicnicTest
extends TestCase
{
byte[] msg = Strings.toByteArray("Hello World!");
public void testPicnic3l1KAT()
throws Exception
{
byte[] msg = Hex.decode("49755A7B1A7CDC5C9BDF5149968061D3C95EE67BFBAF02750C45094303A9D9CD23A08F19B9C768ADC63FFD1527186D09CA4E0356BB882E263BF015CBE3716C05B31A69DDDB790BA82C341AC9B6BE68A81B8BEF8D882304BAF0020D761A0DB04412033DC369961A5213B04E81736A580F1162780599CC029E262D67F31B2773AFB457A1ADAAA292163144F17DE384234F3303111FCD89BCB30333C6C6486F775ED099043C34E6C86450B650F1A02D03781B1D20691B767D166DADF1DCC4D8604D976EFDC9168373A7316DDA9B9FB02A4A321218D9F54E287B7167A08BC0153843BD6355AEA1310824DD5D5EC458BE694AF176119D9E588A29C650FF5500293659EA478B39A62149F819CDB7E7CB32E1D7B1284F159E2AB1B1EA41AF4D0AC94FF3111FC1CCD818F9B2CC7A259701405FDF6A51D2D3EF62789297BD16A659F14968EF902C4A23DA409BF13A4913467B5C991854B2CA6CC006D3F4197A6AA58BD5DD95C36928DA9583332C3FB134FA3890FE7E299F1C17205366C4F4230724C43E4803912E72B816658BBB1B63780865A1F66A2A49B96E93711B1BE97B827D12173402828B1A065B94310D5BD6098D");
byte[] pk = Hex.decode("07E819482D67087A26A6C27FCF56F5F53D00DE9DBAE947BE3B65B9A827C65B99260C00");
byte[] sk = Hex.decode("0735B153A7706109D4A13D7C4B26AA5B5680E819482D67087A26A6C27FCF56F5F53D00DE9DBAE947BE3B65B9A827C65B99260C00");
byte[] sm = Hex.decode("9931000049755A7B1A7CDC5C9BDF5149968061D3C95EE67BFBAF02750C45094303A9D9CD23A08F19B9C768ADC63FFD1527186D09CA4E0356BB882E263BF015CBE3716C05B31A69DDDB790BA82C341AC9B6BE68A81B8BEF8D882304BAF0020D761A0DB04412033DC369961A5213B04E81736A580F1162780599CC029E262D67F31B2773AFB457A1ADAAA292163144F17DE384234F3303111FCD89BCB30333C6C6486F775ED099043C34E6C86450B650F1A02D03781B1D20691B767D166DADF1DCC4D8604D976EFDC9168373A7316DDA9B9FB02A4A321218D9F54E287B7167A08BC0153843BD6355AEA1310824DD5D5EC458BE694AF176119D9E588A29C650FF5500293659EA478B39A62149F819CDB7E7CB32E1D7B1284F159E2AB1B1EA41AF4D0AC94FF3111FC1CCD818F9B2CC7A259701405FDF6A51D2D3EF62789297BD16A659F14968EF902C4A23DA409BF13A4913467B5C991854B2CA6CC006D3F4197A6AA58BD5DD95C36928DA9583332C3FB134FA3890FE7E299F1C17205366C4F4230724C43E4803912E72B816658BBB1B63780865A1F66A2A49B96E93711B1BE97B827D12173402828B1A065B94310D5BD6098D43AD805C58C2C52510B74DE51F4F1FC547A73B1E495123D436F516DB16D5FE7D30379CBC930782B3EADD896D660A4F7D5D1A744A430AD868C8B396E203047E25AE1BE23AF176A9B26596F958C01446515DFC7C5FCC01733B497F0EFCFB07003002F06DB59FAB8FA6E335FB95A15DBB6BD90F61180BE5158E4C3D2A996C5EFCA70429F1EBE1B56927C055E00DB0C08C0353EFFAB809AD86398F14F0672BCFB498AE362B290C107B234AD9F98DEF99DC95BDBE51EF9F186FB0D9064CD2C85DAF86AAA8F45816D9C4BEA5BF2287CFF3CDC99CE48C1D348E369E65E0A9E7CA7E48DF28E2B8217316AC43CDAAF7F4D3FAAD5E6B84E4F1642C3AA974443A1D3BB4CFD247FBB0168CFABF67717697E97E8F031CE35ADDF8F2F9AB4BF95854C6661AE9AA08078E7DEFBA07F08225CA2800CF75948825CB07A1387E150B5DD2135CB72189F088710034DF72225F26D870B2C5F426874D84C5286B6469174895DE6D282A937F5B3CD4942B1FAC780F437D87D9E3255D6937D21C6B74C62A7F48B948207FC36D7D1167ADFA19FB693719D06B52DE7D29980D1BEF5A2F42C811887603B4AF3AAE587CD6EFBE308894B03CAAD5660729EE3FCD54A65313470F5487D6F0697DBCA787A4801B3B701221D55BE31F0EA7E52F205775E3B4A6F4AEEE436D4D1B98B3BFD6A9A934AE227C618CE74A2290AB85B14CCF4631150AEFDF0923277396AD71C7EC3AF18553A33ADF526EFA6B9C3FF780F49929267C88E6D06C827743A3A31C9AB10C6B2865A25F2A9952A95A84DEBD86817F06FD143B805DDBB7638A0FD6C3DB6129319B8B9001199423DACFACE3B31F22C729C371B880225EEDC1935BEDA361639F50824FB7BE24CDF1288F8E12E1FA381FE649AC757DE24DB50E091B46D78A4E3F450D6E18A0BE5B6B9CCC9CE926C85A76EE6F8B29D0C074DC1BA1DEEACDDF5BF7462454D29EDE6686AAD1607CEEF2EE4BEA5A904C39C5EF48EBD2185EE915080E066040D9F5FC686FD5F8AA0D31F2936743B1E192A821C3701D5F32CBD68342553CDBE34AB6D02CD2B96B80CA908C83C1E06F84D1EA578F9CCFF0C04F34D7C4A9FE0B07ACA5F66D3F0A7C3901BA18AA7BA78A43078C26765D7D3000F62CEB4FF286508E70AF1477472FEEB0A56E02C155C56A455FEE1B1135F6C8FD048B26E3D59D570FE289E91C02CA048FB30B9F161C8A7FDBE56364BD1474DA5D60175027A681A54411E704CE10C70E25DD5B71433173FBF5FC3A5D9EC655B9D2007A8F19E0F398754FB79959D4997489F97D81166BAA4EF28FE84C1E2897DCE55B0D455D6BA18BA459CD12B962351B637B9A4BBF31236B1DF0E901757A3962552633F663222F9460EB8211071B9B6B7CAEE9783E5B01F61C1BE0A79D66DF9FC8A9AFC214B0C3A7D9EB14D7D6F07FFC4CCC9FBD56820471DC9645DAF2150A42C66F5980174F055E3DF4D941E934893CD02020C0F2D11CB89667BB5E5AA76227794EE21AFFB984426CCDF8D1119520AABC992D5883FE0057096451E07DF41A5B767F048764205841E83B1F9BD14D4C70259E35DDFACE9F25809D2AC4F68A4AE4E6AC48A9E8CA12099D68FC92A8787234594B3F4978F96A3D7040CB9CD813191192BDB16A1F688094413617920FEC42DDC71B86CB638EAFD2456336F2671DCD9E01522F2372589CEE340C5FB7387BF32B05AEB557D291DBC46E129A11FAC4883ADB73A8716D391928E44297FC897373F92B81BC0A913247255246DE60BB09217BFE5592FE47B33AC7D2C2BA735B8D9B942596AC6B8B227F2C3B517072F06DA4526C7DED73488860B375850C957CD20ABFCD2D8DA5A89CA5FDE3FD9AB7044B903789908D3BB06C4CB6BFC8EB0911A43B20A3F6D2091EA0A4809634E00981362E8B2AAEE4ED6DC49CA14F4D98AC0D5E69BE4BB6A0F385D7946C49F6A1394C77A5CC88F7CD77AF46E362C66191A3E7E0E5C1DE90138567DC32B899E55F24C471F870385A2B8029A0FE06768EB261994ED6F0C8A53DB3D5361EC3B5C98E275B7FD46730BD62EF8DC029B51BAC191AB0C3A5DE916EE65FAE8595DD97D8BA0945F3A79ADEB9D7E4A09E05C840F15D7E6529913613ACE9D3CD3371CAE084C33A1A0C8608CB6D899AE531E9F1026AAEC3AFFCBEF2A21A4CA1DB35889CCAC3F7428CBAC4AB78F30D2C056CB1C39DA5029DD0C4C00B1A7A0C80ACADD18D664C715C15C36192B390B9D52C854FD1210DB7D8E3DA62C40D3363F75DE5FFF2CFFCAB90182DEF7C8831EC0E79CE97DC251829FA56C908D37BF540349104321DEF5F07522984290ACDAFC3F5A1EC9F208D2EC3DEFC686BDEF65F29C182F45700424FC474D40466C101C2BC979BFAA3BC9DFBEE9B3BBEF2A00692463061B137786D31EDC00C8B1A2068AB5B1D33D275ECE1600CC6272E5A7ED841965FD0CE4F00DBCAA1757E2563A3A643042818BD5F333E3CE3A5250C55BA19CEF0FEBFA746E12A77ACBCE982EB4C2053B7A16F669252F5CBCCC28FDA948607D0A7A042541702824FFB8D5A96B1F2C5C54B2DF18BF70943B5AA3446C2F4C793935879A4B6F1093A124C89A196AA960B911696A297BF2C8F8415EDF8D08F349C627A84DB0FC1AF739F06885989E6D06469C5B9C53B4B9B43CDD7C97BCFBF13081EFA4BC3F9453770F2B16AC5ECC8178A180F40B4ECC417A65F0EE24FE4AED808B323D89F6E656C90EC93630F1BBC59FBB13B558B48F0DEF6466AC4D036EB7E9622A4AC1CFB2EECE8A01A84D6123C33C0CB8211BCF7780A3A066A711503DD025417E598B22DA4E80F0490FA1639B772ED03F9670066225625312E88F1C457E4208133E9203F4DF1260B10BCA7F0E779399DE7EF7647E6384210D83748A03215069D89D76AD21684E406CE7AA71DA24A51601DA2341139E40A9E873B2A83EEC385B8791A22FEDE0ACDEF9CA961D8FFFC5438E9297377E96B01F6D6174443C46CD63155BEAC2BC1DF9C7BD6069FA7888840A34A229536526CF59143D1F208735C02B31395D22DF193AA18C4732C978C605560EB03A7DB826BF957145929B0F3E22C4BB9B5F6573F88DCEAE20AF8E0106B32037C0CCF9C46F1BB5ABF2ED1F3705D2B78AA56D39EF6174A657C9B391E4DF0440ACD096ADEF81F647D432BD77EAD76E7F8C20457463C8F23B5F628820664F0B6CA7396CAB8EA040CFB4A76590C6C7A8F20EA10402CEBBD46C61CC0895F56F733A20BD8433AEFFE803216113C093E58F939DE1D6F5F70D52DEA9C24AC980668746C0DDD36EE7B7C420D401CC3EC0D1F6F0E966E5076B4B04C25C9FC75E66C58FE8B0DFD0826F764243859E2032027B366BB45AD46E92A0F2382E22EA11224F5A39EBF971CBA1DADD69040085D20C3CE60DCA6B78ECFE5AF
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Java 的 Bouncy Castle 加密包Bouncy Castle Crypto 包是加密算法的 Java 实现,它是由澳大利亚注册慈善机构 Legion of the Bouncy Castle 开发的,并获得了一些帮助!Legion 和此包的最新动态可在https://www.bouncycastle.org上找到。Legion 还非常感谢其他人对此软件包的贡献(请参阅此处查看当前列表)。如果您想为我们的努力做出贡献,请随时与我们联系或访问我们的捐赠页面,赞助某些特定工作,或通过Crypto Workshop(现在是 Keyfactor 的一部分)购买支持合同。该软件包的组织方式使得它包含适合在任何环境(包括新发布的 J2ME)中使用的轻量级 API,以及使算法符合 JCE 框架的附加基础设施。除非另有说明,否则本软件是根据 MIT X Consortium 许可证分发的。要查看许可证,请参阅此处。OpenPGP 库还包括经过修改的 BZIP2 库,该库是根据Apache 软件许可证 2.0 版授权的。注意此源代码树不是 API 的 FIPS 版本 -
资源推荐
资源详情
资源评论
收起资源包目录
Bouncy Castle Java 发行版(镜像).zip (2000个子文件)
OpenSSLSetup.html 2KB
GnuTLSSetup.html 1KB
package.html 309B
package.html 243B
package.html 220B
package.html 150B
package.html 128B
package.html 123B
package.html 122B
package.html 122B
package.html 121B
package.html 119B
package.html 118B
package.html 117B
package.html 116B
package.html 107B
package.html 105B
package.html 99B
package.html 96B
package.html 86B
package.html 77B
package.html 74B
PicnicTest.java 1.78MB
NISTCertPathTest.java 330KB
NISTCertPathTest.java 330KB
TlsUtils.java 247KB
SLHDSATest.java 224KB
NistCertPathTest2.java 190KB
PGPGeneralTest.java 190KB
PGPKeyRingTest.java 174KB
Sphincs256Test.java 140KB
PGPKeyRingTest.java 132KB
CertTest.java 121KB
PKCS12StoreTest.java 118KB
BcPGPKeyRingTest.java 116KB
SphincsPlusTest.java 114KB
BcPGPKeyRingTest.java 114KB
CertTest.java 103KB
PKIXCertPathReviewer.java 92KB
RFC3280CertPathUtilities.java 92KB
RFC3280CertPathUtilities.java 91KB
RFC3280CertPathUtilities.java 91KB
RFC3280CertPathUtilities.java 91KB
CertPathValidatorTest.java 91KB
X509CertSelector.java 85KB
PKIXCertPathValidatorSpi.java 77KB
PGPPublicKeyMergeTest.java 75KB
TlsClientProtocol.java 74KB
PKCS12KeyStoreSpi.java 74KB
TlsProtocol.java 74KB
PGPRSATest.java 74KB
MLDSATest.java 72KB
BlockCipherTest.java 70KB
DHTest.java 69KB
BCFKSStoreTest.java 65KB
TlsServerProtocol.java 64KB
PGPSignatureTest.java 64KB
BcFKSKeyStoreSpi.java 61KB
PKCS12KeyStoreSpi.java 60KB
PKCS12KeyStoreSpi.java 60KB
BcPGPRSATest.java 59KB
CertTest.java 58KB
X509LDAPCertStoreParameters.java 56KB
TlsExtensionsUtils.java 55KB
DSATest.java 53KB
ECDSA5Test.java 52KB
CertPathValidatorUtilities.java 50KB
CertPathValidatorUtilities.java 50KB
CertPathValidatorUtilities.java 50KB
CertPathValidatorUtilities.java 50KB
BaseBlockCipher.java 49KB
BaseBlockCipher.java 48KB
BaseBlockCipher.java 48KB
JcaTlsCrypto.java 48KB
JcaTlsCrypto.java 48KB
RSATest.java 46KB
ProvTlsServer.java 46KB
DTLSClientProtocol.java 46KB
CertPathValidatorUtilities.java 45KB
ProvSSLContextSpi.java 44KB
AES.java 44KB
OpenPGPTest.java 43KB
PGPv6SignatureTest.java 43KB
DTLSServerProtocol.java 39KB
ExSExprTest.java 39KB
LDAPStoreHelper.java 39KB
LDAPStoreHelper.java 39KB
BcFKSKeyStoreSpi.java 39KB
XMSSTest.java 38KB
XMSSMTTest.java 37KB
TlsCryptoTest.java 36KB
PKCS12StoreTest.java 36KB
DilithiumTest.java 35KB
ProvX509KeyManager.java 34KB
UnrecognizableSubkeyParserTest.java 34KB
BcFKSKeyStoreSpi.java 34KB
GOST3410Test.java 33KB
ProvTlsClient.java 33KB
DTLSRecordLayer.java 33KB
NistCertPathTest.java 32KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
徐浪老师
- 粉丝: 8546
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 飞轮储能 背靠背变流器 充放电控制 并网控制 matlab simulink仿真模型 包括机侧和网侧变流器及其控制,飞轮采用PMSM,直流母线电压很稳,波形已调试好可直接运行
- C#上位机与omron欧姆龙 Host Link通信串口通讯实例 源码 通过和PLC用串口连接,可以读取写入欧姆龙PLC的数据寄存器DM(批量也可以)、输入输出CIO、辅助继电器WR,H保持继电器等
- 反激式开关电源,反激仿真电力电子仿真,电压外环PI控制,输入电压18-75V,输出电压12V,输出功率12W,MATLAB simulink软件
- 永磁同步风力发电机并网,机侧变流器采用转子磁链定向矢量控制,网侧变流器采用电网电压定向矢量控制,双自适应惯量控制策略,引入直流侧电容能量,提高系统惯量
- 【岗位说明】敬老院膳食服务岗位责职.doc
- 【岗位说明】敬老院门卫制度和岗位职责.doc
- 【岗位说明】养老院后勤各岗位职责.doc
- 【岗位说明】养老院服务员岗位职责.doc
- 【岗位说明】养老护理员考核评分表.doc
- 【岗位说明】养老院护工护理等级标准及流程.docx
- 【岗位说明】养老院健康管理部经理职责.doc
- 财务部组织结构与责权说明书.docx
- 仓储部组织结构与责权说明书.docx
- 策划部组织架构图.docx
- 电子商务部组织结构与责权.docx
- 产品部组织结构与责权说明书.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功