Skip to content

Commit bfe4bb8

Browse files
save file
1 parent 978390e commit bfe4bb8

1 file changed

Lines changed: 82 additions & 0 deletions

File tree

blog/26-04-26/x509-certificates-in-js---encrypt-decrypt-data/x509-encrypt-decrypt.js

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ function x509(){
2222
obj.initmod = function(...params){
2323

2424
params.forEach(params=>{
25+
26+
'forge' in params && (forge=params.forge);
27+
2528
});
2629

2730
//function rd(params,name,value){return ((name in params) && params[name]!==undefined) ? params[name] : value}
@@ -35,6 +38,9 @@ function x509(){
3538
var platform = typeof document=='undefined' ? 'node' : 'browser';
3639
console.log('platform',platform);
3740
var crypto;
41+
var forge;
42+
43+
3844

3945

4046
var libs = {};
@@ -74,6 +80,7 @@ function x509(){
7480

7581
libs.browser = async function(){
7682

83+
if(forge)return;
7784
({forge} = await import('https://libs.ext-code.com/external/js/node-forge/node-forge.m.js'));
7885

7986
}//libs
@@ -718,6 +725,15 @@ browser
718725
}//key_cert
719726

720727

728+
729+
730+
731+
732+
733+
734+
//:
735+
736+
721737
function datatype(v){
722738

723739
var str = Object.prototype.toString.call(v);
@@ -728,8 +744,74 @@ browser
728744

729745

730746

747+
748+
749+
750+
751+
731752
//:
732753

754+
755+
function debug(...args){
756+
757+
if(!df && !obj.df)return;
758+
args.unshift(`[ ${did} ]`);
759+
var fmt = Array.from({length:args.length}).fill('%O').join(' ');
760+
var args2 = [fmt].concat(args);
761+
console.groupCollapsed.apply(console,args2);
762+
console.trace();
763+
console.groupEnd();
764+
765+
}//debug
766+
767+
768+
debug.log = function(){debug.apply(null,arguments)}
769+
770+
771+
debug.json = function(v){
772+
773+
var err;
774+
try{
775+
776+
var str = JSON.stringify(v,null,4);
777+
778+
}//try
779+
catch(err2){
780+
781+
err = err2;
782+
783+
}//catch
784+
if(err){
785+
var error = err.toString();
786+
debug(error);
787+
}else{
788+
debug(str);
789+
}
790+
791+
}//json
792+
793+
794+
debug.hex = function(...args){
795+
796+
args.forEach(v=>{
797+
798+
var args = [v];
799+
v = v.toString();
800+
var hex = [...v].map(c=>c.charCodeAt(0).toString(16).padStart(2,'0')).join(' ');
801+
args.push('hex:',hex);
802+
debug.apply(null,args);
803+
804+
});
805+
806+
}//hex
807+
808+
809+
810+
811+
812+
//:
813+
814+
733815
return obj;
734816

735817
//x509-encrypt-decrypt

0 commit comments

Comments
 (0)