5.16.124 • Published 1 year ago

@diotoborg/laudantium-itaque-esse v5.16.124

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

@diotoborg/laudantium-itaque-esse

license npm version npm downloads jsdeliver downloads CDNJS githubsponsors cryptocurrency

@diotoborg/laudantium-itaque-esse TOP | github | Wiki | DOWNLOADS | TUTORIALS | API REFERENCE | Online Tool | DEMO | NODE TOOL | AddOn | DONATE

The '@diotoborg/laudantium-itaque-esse' (RSA-Sign JavaScript Library) is an opensource free cryptography library supporting RSA/RSAPSS/ECDSA/DSA signing/validation, ASN.1, PKCS#1/5/8 private/public key, X.509 certificate, CRL, OCSP, CMS SignedData, TimeStamp, CAdES JSON Web Signature/Token/Key in pure JavaScript.

Public page is https://kjur.github.io/@diotoborg/laudantium-itaque-esse .

Your bugfix and pull request contribution are always welcomed :)

NOTICE FOR COMMING 11.0.0 RELEASE

The "@diotoborg/laudantium-itaque-esse" library is a long lived JavaScript library from 2010 developed with old JavaScript style and backword compatibility. From coming release 11.0.0, following are planed and suport them gradually:

  • Stop to support Internet Explorer.
  • Stop to support bower.
  • Modern ECMA functions will be introduced such as Promise, let, Array methods or class.
  • API document generator will be changed from Jsdoc Toolkit to JSDoc3.
  • Module bandler will be used such as browserify or webpack.
  • Not to use YUI compressor.
  • Unit test framework will be changed from QUnit and mocha to jest.
  • W3C Web Crypto API support.
  • split into some modules besides @diotoborg/laudantium-itaque-esse have been all in package before 11.0.0.

NEWS

  • 2024-Jan-16: Security advisory and update for Marvin attack vulnerability published. Due to this vulnerability, RSA PKCS#1.5 and RSAOAEP encryption/decryption no longer be supported.
  • 2023-Mar-12: 10.7.0 Release. Now supports custom X.509 extension and custom OIDs by new "Add-on" architecture. (See here in detail)
  • 2021-Nov-21: 10.5.0 Release. Now supports secp521r1(P-521) ECDSA.
  • 2021-Apr-14: Security advisory and update for CVE-2021-30246 RSA signature validation vulnerability published
  • 2020-Oct-05: @diotoborg/laudantium-itaque-esse won Google Open Source Peer Bonus Award. Thank you Google.
  • 2020-Sep-23: 10.0.0 released for CMS SignedData related class including timestamp and CAdES architecture update
  • 2020-Aug-24: 9.1.0 released to new CRL APIs align with certificate
  • 2020-Aug-19: 9.0.0 released for major update of certificate and CSR generation and parsing without backward compatibility. Please see migration guide in detail.
  • 2020-Aug-02: twitter account @@diotoborg/laudantium-itaque-esse started for announcement. please follow.

HIGHLIGHTS

  • Swiss Army Knife style all in one package crypto and PKI library
  • available on Node.js and browsers
  • Long live open source software from 2010
  • very easy API to use
  • powerful various format key loader and ASN.1 API
  • rich document and samples
  • no dependency to other library
  • no dependency to W3C Web Cryptography API nor OpenSSL
  • no dependency on newer ECMAScirpt function. So old browsers also supported.
  • very popular crypto library with 1M+ npm downloads/month
  • supports "Add-on" architecture

INSTALL

Node NPM

> npm install @diotoborg/laudantium-itaque-esse @diotoborg/laudantium-itaque-esse-util

Bower

> bower install @diotoborg/laudantium-itaque-esse

Or include in HTML from many CDN sites

> <script src="https://cdnjs.cloudflare.com/ajax/libs/@diotoborg/laudantium-itaque-esse/8.0.20/@diotoborg/laudantium-itaque-esse-all-min.js"></script>

USAGE

Loading encrypted PKCS#5 private key:

> var rs = require('@diotoborg/laudantium-itaque-esse');
> var rsu = require('@diotoborg/laudantium-itaque-esse-util');
> var pem = rsu.readFile('z1.prv.p5e.pem');
> var prvKey = rs.KEYUTIL.getKey(pem, 'passwd');

Sign string 'aaa' with the loaded private key:

> var sig = new a.Signature({alg: 'SHA1withRSA'});
> sig.init(prvKey);
> sig.updateString('aaa');
> var sigVal = sig.sign();
> sigVal
'd764dcacb...'

MORE TUTORIALS AND SAMPLES

RECENT SECURITY ADVISORY

publishedfixed versiontitle/advisoryCVECVSS
2024Jan1611.0.0Marvin attack vulnerability for RSA and RSAOAEP decryptionCVE-2024-214847.5
2022Jun2410.5.25JWS and JWT signature validation vulnerability with special charactersCVE-2022-25898?
2021Apr1410.2.0RSA signature validation vulnerability on maleable encoded messageCVE-2021-302469.1
2020Jun228.0.19ECDSA signature validation vulnerability by accepting wrong ASN.1 encodingCVE-2020-149665.5
2020Jun228.0.18RSA RSAES-PKCS1-v1_5 and RSA-OAEP decryption vulnerability with prepending zerosCVE-2020-149674.8
2020Jun228.0.17RSA-PSS signature validation vulnerability by prepending zerosCVE-2020-149684.2

Here is full published security advisory list.

DONATIONS

If you like @diotoborg/laudantium-itaque-esse and my other project, you can support their development by donation through any of the platform/services below. Thank you as always.

Github Sponsors

You can sponsor @diotoborg/laudantium-itaque-esse with the GitHub Sponsors program.

Cryptocurrency

You can donate cryptocurrency to @diotoborg/laudantium-itaque-esse using the following addresses:

cloudwatchbatchpruneremoveArray.prototype.filterES2020clienttakesuperagentutil.inspectroute53eslintconfiges2016dropwafopenstreamssideinspectreadablepicomatchargvobjectless mixinsdataredirectendpointReflect.getPrototypeOfmatchvalidatettyfullwidthECMAScript 2017columnweakmapregularpreprocessorcloudformationkarmaspinnercoercibleprogressObject.isestreepackage.jsononceperformancediffmatchAlliamratelesscsscharacterasciiformatgetterflags@@toStringTagwatchFile_.extendworkflowguidwrapfast-copyInt8Arraymodulesnodejscommandercollection.es6stylesoptimistcommandslothasOwnPropertyextensionfsunicoderobusttoStringTagArray.prototype.flatMapvestcjkcode pointswidthSetbundlermiddlewarearraysWebSockettypesafeECMAScript 2021trimRighttoobjectwatcherregexObject.definePropertyjestdeepeslintfindupwarningfiltersearchform-validationeslint-pluginArray.prototype.flathttpsmakeredactglacierenderpromisermcompile lessreduxlook-upchromeoptionconsolestreamECMAScript 2023computed-typesES2018fastifyECMAScript 2018private dataInt16Arraypatchairbnbbreakpostcss-pluginequallintformattingbundlingstateterminalsyntaxerrorcloudsearchyupjoidotenvflatStyleSheetshellio-tsregexpgradients cssoutputes2017call-boundtouch[[Prototype]]predictablehookformrapidfunctionaldayjstimenpmawslimitrfc4122wordwraptoSortedsharedarraybufferhttpbluebirdtapansisesdefineStreamchineseschemeextendECMAScript 2016equalityqsiterationavareact-hook-formzodcallbackjsdomintrinsicmulti-packagereducerstreams2numberroutingaccessibilityreplayhasOwnsettingsswfprivatepositivedescriptorsnodereact-testing-librarygetPrototypeOfreducestyleguidedeepcloneclassnamejwtutilecmascriptjsonpathpromisesfluxdependenciesworkspace:*i18nRxmimetypescss nestingagentbeanstalkes-shimsdebugtestingponyfillFunction.prototype.nameObject.entriesstringifierformsES5libphonenumberString.prototype.trimtoolsfile systembytemkdirtermsymlinkfpsquotebindgetintrinsicgetoptesredux-toolkitencryptionratelimitloggingrdsimmerstringdirbyteOffsetwatchinglastshamincludesregular expressionstringifyphoneloggdprisConcatSpreadableparentlazyclasseshigher-ordertaskflaghooksnamemaptextajaxchecklimitedes8Object.getPrototypeOffetchkeykoreanES8make dirdeep-clonejseast-asian-widthcharactershotmodulequeryconnectprefixparentsuninstalljasminepreserve-symlinksbootstrap lesshelpersIteratorconfigbuffersreact-hookschannelArray.prototype.findLastIndexObservablespathlanguagemovefindLastIndexAsyncIteratorwhatwgkinesisTypedArrayMicrosoftargumentECMAScript 5enumerablefast-clonenativepersistentsequenceTypeScriptvaluesperformantforEachpropless compilergenericstoolkitjsdiffdatemetadatastdlibweaksetcloudtrailpropertystylesetImmediaterequestES2023trimenvironmentutilityESimmutablefunctiontc39BigInt64ArrayPushdefinePropertybyteLengthrm -rfcallboundmochagrouplengthfindfulls3fromcontainsemrschemacolorwriteloadingrgbhardlinksgetvaluekeysefficientprettyrm -frpackageCSSStyleDeclarationObject.keyslivereactapollofastcopychromiumsimpledbtypeECMAScript 2022JSONsns__proto__sameValueZerovalidES3compiler$.extenddescriptorglobsetPrototypeOfSymbolJSON-SchemaWeakMapfigletcopyiddeterministicdynamodbeventEmittereveryasttypeerrorinstalles-shim APIArray.prototype.findLastinternallruparsesorteddependency managerpipeUint32Arrayidlecallmkdirpregular expressionses2018xhriecomparetoArrayaccessorinpostcsstypanionmimeStreamsArray.prototype.includestypedarraysownwgetconcatMaptyped arraycloudfrontzeroinferenceiteratorcircularArrayBuffer.prototype.sliceamazonFloat64ArrayjapaneseObservablejavascriptinternal slotes6ObjectframeworklocationbddArrayBuffer#slicepnpm9elmlinewraptestdatastructure-0Array.prototype.flattenes2015ES2017debuggerdataViewwalkwebspinnersES2015ReactiveExtensionsESnextclassnamesrmdiriteratestylinglistenerscreatebootstrap cssHyBipasswordupwritableeslintpluginwaittelephonerangeerrorimportexportutilitiesshebangUnderscoreexpresslockfileentriesBigUint64ArrayES2021fileflatMapArrayextramonorepoexpressionruntimecss-in-jserrormime-dbbannerWeakSettrimLeftgroupByqueueObject.fromEntriesmatcheselbvariables in cssoffsetfastcloneargscall-bindtraverseclass-validatorsymlinksarktypeYAMLboundECMAScript 3randomObject.valuesstableescapeslicetypesfunctionsES2022lessargparseES2019find-upfastexecstylesheetelectronmrunested cssminimalsymbolconsumehas-ownajvcolourvalidationES2016Array.prototype.containsflattenvariablesbrowserlistsyntaxchaideletefindLastECMAScript 7viewes7deepcopyString.prototype.matchAlltddstoragegatewaysymbolsxtermqueueMicrotaskArrayBufferES7watchespreesettercss variablewalkingURLSearchParamsprotocol-buffersfolderObject.assignresolveawesomesaucees5256full-widthcensorthroatrequirefixed-widthECMAScript 2019ECMAScript 2015TypeBoxspectslibconcatcolumnsPromiseWebSocketsspeedoptimizerindicatortrimStarttypeoffast-deep-clonearraybufferpushassertsmobilebcryptworkerisECMAScript 6less.jsgradients css3artdeep-copyl10nCSSECMAScript 2020statelessnegativelookwhichFloat32Arraygraphqlreal-timesuperstructec2.envcsstapeRegExp#flagsless cssES6starterrouteassertioncryptostructuredCloneapihashbrowserslistduplexmergeSymbol.toStringTagserializequerystringauthenticationebsjsonstyled-componentsawaitreadUint16Arraytestertostringtagscheme-validationcodesnamesserialization0curldirectorycorseventssomerecursivepolyfillbusybrowsercommand-lineelasticacheproxyReactiveXtypedarrayshimmixinscoreshrinkwrapa11ypackages
@diotoborg/vero-atque@diotoborg/vero-eligendi-deleniti@diotoborg/vero-quaerat@diotoborg/vero-sit-doloribus@diotoborg/vitae-quo@diotoborg/voluptate-eius@diotoborg/voluptate-fuga@diotoborg/voluptate-sequi-natus@diotoborg/voluptatum-veritatis@diotoborg/voluptatum-voluptas-enim@diotoborg/a-odio@diotoborg/ad-non@diotoborg/atque-dolorem-ratione@diotoborg/consectetur-consequuntur@diotoborg/consectetur-fuga@diotoborg/consectetur-modi-reprehenderit@diotoborg/consequatur-aut@diotoborg/consequatur-sunt@diotoborg/consequatur-velit-quae@diotoborg/consequuntur-dolorem-dicta@diotoborg/consequuntur-laboriosam@diotoborg/consequuntur-laborum@diotoborg/corporis-labore@diotoborg/enim-veritatis@diotoborg/esse-distinctio-repellat@diotoborg/est-beatae@diotoborg/et-maxime-hic@diotoborg/eum-porro@diotoborg/eum-tempora-distinctio@diotoborg/excepturi-incidunt@diotoborg/facilis-pariatur@diotoborg/et-voluptatum-mollitia@diotoborg/eveniet-officia@diotoborg/exercitationem-culpa@diotoborg/explicabo-optio@diotoborg/facilis-unde@diotoborg/fuga-molestias@diotoborg/fuga-nihil@diotoborg/esse-perspiciatis-voluptatem@diotoborg/et-facere-iusto@diotoborg/eum-est-nulla@diotoborg/excepturi-deserunt-eaque@diotoborg/et-architecto@diotoborg/eveniet-magnam@diotoborg/explicabo-nam-iste@diotoborg/fuga-rem-inventore@diotoborg/est-necessitatibus@diotoborg/eum-deleniti-tempora@diotoborg/eveniet-eaque-fugit@diotoborg/explicabo-laboriosam-maxime@diotoborg/explicabo-vitae-velit@diotoborg/eos-quidem@diotoborg/error-nesciunt-qui@diotoborg/est-voluptate@diotoborg/eveniet-pariatur-esse@diotoborg/explicabo-pariatur@diotoborg/ex-repellat@diotoborg/facilis-perferendis@diotoborg/corporis-voluptatum-saepe@diotoborg/dignissimos-officiis@diotoborg/distinctio-quaerat@diotoborg/distinctio-quia@diotoborg/dolore-odio-est@diotoborg/dolorum-saepe@diotoborg/earum-eligendi@diotoborg/corporis-repellat-dicta@diotoborg/deleniti-totam-suscipit@diotoborg/dolor-iure@diotoborg/dolorem-dolorem@diotoborg/dolores-velit@diotoborg/doloribus-error@diotoborg/eaque-iusto@diotoborg/eius-pariatur@diotoborg/cum-aliquam@diotoborg/cupiditate-perferendis-repudiandae@diotoborg/ea-consectetur@diotoborg/ducimus-eveniet@diotoborg/dolorum-unde@diotoborg/corporis-quia@diotoborg/corporis-optio-tenetur@diotoborg/debitis-blanditiis-dolore@diotoborg/deserunt-eum@diotoborg/dolore-nesciunt@diotoborg/dolorum-tempora@diotoborg/eius-animi-ullam@diotoborg/earum-eum-doloribus@diotoborg/culpa-at-cumque@diotoborg/cumque-repellat@diotoborg/cumque-velit-eius@diotoborg/dignissimos-aliquam@diotoborg/distinctio-sed@diotoborg/dolorem-possimus@diotoborg/eaque-illum-qui@diotoborg/corrupti-beatae@diotoborg/culpa-amet-totam@diotoborg/cupiditate-accusantium-provident@diotoborg/distinctio-excepturi@diotoborg/dolore-id@diotoborg/eaque-maxime@diotoborg/cum-illum
5.16.123

1 year ago

5.16.124

1 year ago

3.13.101

1 year ago

4.15.115

1 year ago

3.9.57

1 year ago

3.9.56

1 year ago

3.7.46

1 year ago

5.15.123

1 year ago

3.7.44

1 year ago

5.15.122

1 year ago

3.7.45

1 year ago

3.7.42

1 year ago

3.7.43

1 year ago

3.11.75

1 year ago

3.11.77

1 year ago

3.11.76

1 year ago

3.11.79

1 year ago

3.11.78

1 year ago

1.4.31

1 year ago

1.4.33

1 year ago

1.4.32

1 year ago

3.7.41

1 year ago

1.2.16

1 year ago

1.2.17

1 year ago

1.2.14

1 year ago

1.2.15

1 year ago

5.15.116

1 year ago

5.15.115

1 year ago

3.15.115

1 year ago

5.15.118

1 year ago

3.15.114

1 year ago

5.15.117

1 year ago

3.15.113

1 year ago

3.15.112

1 year ago

3.15.111

1 year ago

3.15.110

1 year ago

3.12.98

1 year ago

3.10.75

1 year ago

3.12.97

1 year ago

3.10.73

1 year ago

3.12.99

1 year ago

3.10.74

1 year ago

5.15.119

1 year ago

3.12.90

1 year ago

3.12.92

1 year ago

3.12.91

1 year ago

3.12.94

1 year ago

3.10.71

1 year ago

1.3.31

1 year ago

3.12.93

1 year ago

3.10.72

1 year ago

3.12.96

1 year ago

2.6.39

1 year ago

3.12.95

1 year ago

3.10.70

1 year ago

1.3.30

1 year ago

5.15.121

1 year ago

5.15.120

1 year ago

3.15.105

1 year ago

3.15.104

1 year ago

3.15.103

1 year ago

3.15.102

1 year ago

3.15.109

1 year ago

3.15.108

1 year ago

3.15.107

1 year ago

3.15.106

1 year ago

3.8.49

1 year ago

3.10.59

1 year ago

3.8.47

1 year ago

3.8.48

1 year ago

3.8.46

1 year ago

3.10.57

1 year ago

3.10.58

1 year ago

3.12.101

1 year ago

1.5.34

1 year ago

1.5.33

1 year ago

3.8.56

1 year ago

3.8.54

1 year ago

3.8.55

1 year ago

3.12.87

1 year ago

3.10.64

1 year ago

3.12.86

1 year ago

3.10.65

1 year ago

3.12.89

1 year ago

3.10.62

1 year ago

3.12.88

1 year ago

3.10.63

1 year ago

3.10.68

1 year ago

3.10.69

1 year ago

3.10.66

1 year ago

3.10.67

1 year ago

3.12.81

1 year ago

2.7.39

1 year ago

3.12.80

1 year ago

3.12.83

1 year ago

3.10.60

1 year ago

3.12.82

1 year ago

3.10.61

1 year ago

3.12.85

1 year ago

3.12.84

1 year ago

3.8.52

1 year ago

3.8.53

1 year ago

3.8.50

1 year ago

3.8.51

1 year ago

1.3.28

1 year ago

1.3.29

1 year ago

1.3.26

1 year ago

1.3.27

1 year ago

1.2.18

1 year ago

1.2.19

1 year ago

2.7.40

1 year ago

3.11.80

1 year ago

1.2.20

1 year ago

1.2.23

1 year ago

1.2.24

1 year ago

1.2.21

1 year ago

2.7.41

1 year ago

1.2.22

1 year ago

1.2.25

1 year ago

1.2.26

1 year ago

3.12.100

1 year ago

2.5.36

1 year ago

2.5.37

1 year ago

3.14.102

1 year ago

2.5.38

1 year ago

3.14.101

1 year ago

2.5.39

1 year ago

2.5.34

1 year ago

2.5.35

1 year ago

1.2.13

1 year ago

1.2.9

1 year ago

1.2.12

1 year ago

1.2.10

1 year ago

1.2.11

1 year ago

1.1.9

1 year ago

1.1.8

1 year ago

1.1.7

1 year ago

1.1.6

1 year ago

1.1.5

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago