mirror of
https://github.com/tlsnotary/PageSigner.git
synced 2026-01-09 22:57:57 -05:00
pgsg-node: misc fixes to work with latest PageSigner changes
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
var oracles_intact = false; //must be explicitely set to true
|
var oracles_intact = false; //will be set to true after the oracle check completes
|
||||||
|
|
||||||
var old_oracle = {
|
var old_oracle = {
|
||||||
'snapshotId': 'snap-0f838cf4591ac24e0',
|
'snapshotId': 'snap-0f838cf4591ac24e0',
|
||||||
@@ -28,14 +28,10 @@ var oracle = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//there can be potentially multiple oracles to choose from
|
//there can be potentially multiple oracles to choose from
|
||||||
var oracles = [];
|
var oracles = [];
|
||||||
oracles.push(oracle);
|
oracles.push(oracle);
|
||||||
//all servers trusted to perform notary (including non-oracles)
|
|
||||||
//TODO: configurable
|
|
||||||
var pagesigner_servers = [oracle];
|
|
||||||
|
|
||||||
//assuming both events happened on the same day, get the time
|
//assuming both events happened on the same day, get the time
|
||||||
//difference between them in seconds
|
//difference between them in seconds
|
||||||
@@ -330,6 +326,7 @@ async function verifyOldOracle(name){
|
|||||||
if (typeof module !== 'undefined'){ //we are in node.js environment
|
if (typeof module !== 'undefined'){ //we are in node.js environment
|
||||||
module.exports={
|
module.exports={
|
||||||
check_oracle,
|
check_oracle,
|
||||||
oracle
|
oracle,
|
||||||
|
verifyOldOracle
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -45,6 +45,7 @@ getExpandedKeys = tlsn.getExpandedKeys
|
|||||||
getModulus = verifychain.getModulus
|
getModulus = verifychain.getModulus
|
||||||
getTime = utils.getTime
|
getTime = utils.getTime
|
||||||
gunzip_http = utils.gunzip_http
|
gunzip_http = utils.gunzip_http
|
||||||
|
oracle = oracles.oracle
|
||||||
parse_certs = verifychain.parse_certs
|
parse_certs = verifychain.parse_certs
|
||||||
pem2ab = utils.pem2ab
|
pem2ab = utils.pem2ab
|
||||||
pubkeyPEM2raw = utils.pubkeyPEM2raw
|
pubkeyPEM2raw = utils.pubkeyPEM2raw
|
||||||
@@ -55,6 +56,8 @@ wildTest = utils.wildTest
|
|||||||
verifyChain = verifychain.verifyChain
|
verifyChain = verifychain.verifyChain
|
||||||
verifyECParamsSig = tlsn.verifyECParamsSig
|
verifyECParamsSig = tlsn.verifyECParamsSig
|
||||||
verifyNotarySig = tlsn.verifyNotarySig
|
verifyNotarySig = tlsn.verifyNotarySig
|
||||||
|
verifyOldOracle = oracles.verifyOldOracle
|
||||||
|
verifyPgsg = mainjs.verifyPgsg
|
||||||
|
|
||||||
|
|
||||||
//override
|
//override
|
||||||
@@ -162,14 +165,15 @@ import_resource = async function(path){
|
|||||||
//override
|
//override
|
||||||
Certificate = pkijs.Certificate;
|
Certificate = pkijs.Certificate;
|
||||||
CertificateChainValidationEngine = pkijs.CertificateChainValidationEngine
|
CertificateChainValidationEngine = pkijs.CertificateChainValidationEngine
|
||||||
|
use_max_fragment_length = false;
|
||||||
|
|
||||||
//override
|
//override
|
||||||
createNewSession = async function(creationTime, commonName, cleartext, pgsg, is_imported){
|
createNewSession = async function(creationTime, commonName, notaryName, cleartext, pgsg, is_imported){
|
||||||
var suffix = is_imported ? "_imported" : ""
|
var suffix = is_imported ? "_imported" : ""
|
||||||
var dirname = 'session_'+ creationTime + "_" + commonName + suffix
|
var dirname = 'session_'+ creationTime + "_" + commonName + suffix
|
||||||
fs.mkdirSync(dirname)
|
fs.mkdirSync(dirname)
|
||||||
fs.writeFileSync(path.join(__dirname, dirname, "cleartext"), cleartext)
|
fs.writeFileSync(path.join(__dirname, dirname, "cleartext"), cleartext)
|
||||||
fs.writeFileSync(path.join(__dirname, dirname, commonName+'.pgsg'), Buffer.from(pgsg))
|
fs.writeFileSync(path.join(__dirname, dirname, commonName+'.pgsg'), Buffer.from(JSON.stringify(pgsg)))
|
||||||
return dirname
|
return dirname
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -219,13 +223,13 @@ if (argv[2] === 'verify') {
|
|||||||
}
|
}
|
||||||
var pgsgfile = argv[3]
|
var pgsgfile = argv[3]
|
||||||
var pgsgBuf = fs.readFileSync(pgsgfile)
|
var pgsgBuf = fs.readFileSync(pgsgfile)
|
||||||
var pgsg = pgsgBuf.toJSON().data
|
console.log('pgsg.length', pgsgBuf.length)
|
||||||
console.log('pgsg.length', pgsg.length)
|
var pgsg = JSON.parse(pgsgBuf)
|
||||||
await verifychain.parse_certs()
|
await verifychain.parse_certs()
|
||||||
var rv = await mainjs.verify_pgsg(pgsg)
|
var rv = await mainjs.verifyPgsg(pgsg)
|
||||||
var server_name = rv[1]
|
var server_name = rv[1]
|
||||||
var cleartext = rv[0]
|
var cleartext = rv[0]
|
||||||
var dirname = await createNewSession(getTime(), server_name, cleartext, pgsg, true)
|
var dirname = await createNewSession(getTime(), server_name, 'notary name', cleartext, pgsg, true)
|
||||||
console.log('session saved in', dirname)
|
console.log('session saved in', dirname)
|
||||||
exit()
|
exit()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user