Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
var leveldown = require('memdown')
var Q = require('q')
var collect = require('stream-collector')
var constants = require('@tradle/constants')
var Log = require('logbase').Log
var Entry = require('logbase').Entry
var fakeKeeper = require('@tradle/test-helpers').fakeKeeper
var createIdentityDB = require('../lib/identityDB')
var ted = require('./fixtures/ted-pub')
var EventType = require('../lib/eventType')
var utils = require('../lib/utils')
var TYPE = constants.TYPE
var ROOT_HASH = constants.ROOT_HASH
var PREV_HASH = constants.PREV_HASH
var CUR_HASH = constants.CUR_HASH
var IDENTITY_TYPE = constants.TYPES.IDENTITY
var dbCounter = 0
var nextDBName = function () {
return 'db' + (dbCounter++)
}
test('ignore identities that collide on keys', function (t) {
t.plan(ted.pubkeys.length)
var log = new Log(nextDBName(), {
db: leveldown
})
ted = extend(ted) // defensive copy
var badPerson = extend(ted, { name: 'evil ted' })
var keeperMap = {}
var tedHash = 'abc'
var createTypeDB = require('./lib/typeDB')
var createTxDB = require('./lib/txDB')
var createMiscDB = require('./lib/miscDB')
var Errors = require('./lib/errors')
var utils = require('./lib/utils')
var getViaCache = require('./lib/getViaCache')
var RETRY_UNCHAIN_ERRORS = [
ChainLoader.Errors.ParticipantsNotFound,
ChainLoader.Errors.FileNotFound
].map(function (ErrType) {
return ErrType.type
})
var DEV = process.env.NODE_ENV !== 'production'
var TYPE = constants.TYPE
var TYPES = constants.TYPES
var SIGNEE = constants.SIGNEE
var ROOT_HASH = constants.ROOT_HASH
var PREV_HASH = constants.PREV_HASH
var CUR_HASH = constants.CUR_HASH
var NONCE = constants.NONCE
var CONFIRMATIONS_BEFORE_CONFIRMED = 10
Driver.BLOCKCHAIN_KEY_PURPOSE = 'messaging'
Driver.MIN_BALANCE = 10000
Driver.CHAIN_WRITE_THROTTLE = 60000
Driver.CHAIN_READ_THROTTLE = 300000
Driver.SEND_THROTTLE = 10000
Driver.CATCH_UP_INTERVAL = 2000
Driver.UNCHAIN_THROTTLE = 20000
// Driver.Zlorp = Zlorp
Driver.Kiki = kiki
Driver.Identity = Identity
var collect = require('stream-collector')
var levelup = require('levelup')
var Q = require('q')
var pump = require('pump')
var map = require('map-stream')
// var levelQuery = require('level-queryengine')
// var jsonQueryEngine = require('jsonquery-engine')
var safe = require('safecb')
var constants = require('@tradle/constants')
// var TxData = require('tradle-tx-data').TxData
var levelErrs = require('level-errors')
var LiveStream = require('level-live-stream')
var CUR_HASH = constants.CUR_HASH
var ROOT_HASH = constants.ROOT_HASH
var TYPE = constants.TYPE
var TYPES = constants.TYPES
var lb = require('logbase')
var Entry = lb.Entry
var LogBase = lb.Simple
var EventType = require('./eventType')
var rebuf = require('./rebufEncoding')
var DEBUG = require('./debug')
var utils = require('./utils')
var Errors = require('./errors')
var SEPARATOR = '!'
var now = utils.now
var ENTRY_TIMEOUT = DEBUG ? false : 5000
module.exports = function createMsgDB (path, options) {
typeforce('String', path)
typeforce({
leveldown: 'Function',
// var lexint = require('lexicographic-integer')
var collect = require('stream-collector')
var levelup = require('levelup')
var Q = require('q')
var pump = require('pump')
// var levelQuery = require('level-queryengine')
// var jsonQueryEngine = require('jsonquery-engine')
var safe = require('safecb')
var constants = require('@tradle/constants')
// var TxData = require('tradle-tx-data').TxData
var levelErrs = require('level-errors')
var LiveStream = require('level-live-stream')
var CUR_HASH = constants.CUR_HASH
var ROOT_HASH = constants.ROOT_HASH
var TYPE = constants.TYPE
var TYPES = constants.TYPES
var lb = require('logbase')
var Entry = lb.Entry
var LogBase = lb.Simple
var EventType = require('./eventType')
var rebuf = require('./rebufEncoding')
var DEBUG = require('./debug')
var utils = require('./utils')
var Errors = require('./errors')
var now = utils.now
var ENTRY_TIMEOUT = DEBUG ? false : 5000
var MAIN_PREFIX = 'm!'
var TIMESTAMP_PREFIX = 't'
var CHAIN_TIMESTAMP_PREFIX = TIMESTAMP_PREFIX + 'c!'
var SEND_TIMESTAMP_PREFIX = TIMESTAMP_PREFIX + 's!'
module.exports = function createMsgDB (path, options) {
var collect = require('stream-collector')
var pump = require('pump')
var levelup = require('levelup')
var Q = require('q')
var Promise = Q.Promise
// var levelQuery = require('level-queryengine')
// var jsonQueryEngine = require('jsonquery-engine')
var safe = require('safecb')
var constants = require('@tradle/constants')
// var TxData = require('tradle-tx-data').TxData
var levelErrs = require('level-errors')
var LiveStream = require('level-live-stream')
var CUR_HASH = constants.CUR_HASH
var ROOT_HASH = constants.ROOT_HASH
var TYPE = constants.TYPE
var TYPES = constants.TYPES
var lb = require('logbase')
var Entry = lb.Entry
var LogBase = lb.Simple
var EventType = require('./eventType')
var rebuf = require('./rebufEncoding')
var DEBUG = require('./debug')
var utils = require('./utils')
var Errors = require('./errors')
var now = utils.now
var ENTRY_TIMEOUT = DEBUG ? false : 5000
var MAIN_PREFIX = 'm!'
var TIMESTAMP_PREFIX = 't'
var CHAIN_TIMESTAMP_PREFIX = TIMESTAMP_PREFIX + 'c!'
var SEND_TIMESTAMP_PREFIX = TIMESTAMP_PREFIX + 's!'
module.exports = function createMsgDB (path, options) {
driverBill.once('unchained', function (info) {
t.equal(info[TYPE], constants.TYPES.IDENTITY)
})
exports.identity = function identity (value) {
if (value[TYPE] !== constants.TYPES.IDENTITY) return false
try {
typeforce({
pubkeys: typeforce.arrayOf(types.pubKey)
}, value)
} catch (err) {
return false
}
return true
}
var debug = require('debug')('identityDB')
var typeforce = require('typeforce')
var extend = require('xtend')
var map = require('map-stream')
var levelup = require('levelup')
var Q = require('q')
var constants = require('@tradle/constants')
var TYPE = constants.TYPE
var IDENTITY_TYPE = constants.TYPES.IDENTITY
var ROOT_HASH = constants.ROOT_HASH
var CUR_HASH = constants.CUR_HASH
var Simple = require('logbase').Simple
var rebuf = require('./rebufEncoding')
var EventType = require('./eventType')
var DEBUG = require('./debug')
var ENTRY_TIMEOUT = DEBUG ? false : 5000
var prefixes = {
fingerprint: 'f'
}
prefixes[CUR_HASH] = CUR_HASH
prefixes[ROOT_HASH] = ROOT_HASH
module.exports = function mkIdentityDB (path, options) {
typeforce('String', path)