mirror of
https://github.com/idanoo/GoScrobble
synced 2025-07-01 13:42:20 +00:00
0.2.0 - Mid migration
This commit is contained in:
parent
139e6a915e
commit
7e38fdbd7d
42393 changed files with 5358157 additions and 62 deletions
2
web/node_modules/minimalistic-crypto-utils/.npmignore
generated
vendored
Normal file
2
web/node_modules/minimalistic-crypto-utils/.npmignore
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
node_modules/
|
||||
npm-debug.log
|
11
web/node_modules/minimalistic-crypto-utils/.travis.yml
generated
vendored
Normal file
11
web/node_modules/minimalistic-crypto-utils/.travis.yml
generated
vendored
Normal file
|
@ -0,0 +1,11 @@
|
|||
sudo: false
|
||||
|
||||
language: node_js
|
||||
|
||||
node_js:
|
||||
- "4"
|
||||
- "6"
|
||||
- "stable"
|
||||
|
||||
script:
|
||||
- npm test
|
47
web/node_modules/minimalistic-crypto-utils/README.md
generated
vendored
Normal file
47
web/node_modules/minimalistic-crypto-utils/README.md
generated
vendored
Normal file
|
@ -0,0 +1,47 @@
|
|||
# minimalistic-crypto-utils
|
||||
[](http://travis-ci.org/indutny/minimalistic-crypto-utils)
|
||||
[](http://badge.fury.io/js/minimalistic-crypto-utils)
|
||||
|
||||
Very minimal utils that are required in order to write reasonable JS-only
|
||||
crypto module.
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
const utils = require('minimalistic-crypto-utils');
|
||||
|
||||
utils.toArray('abcd', 'hex');
|
||||
utils.encode([ 1, 2, 3, 4 ], 'hex');
|
||||
utils.toHex([ 1, 2, 3, 4 ]);
|
||||
```
|
||||
|
||||
#### LICENSE
|
||||
|
||||
This software is licensed under the MIT License.
|
||||
|
||||
Copyright Fedor Indutny, 2017.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to permit
|
||||
persons to whom the Software is furnished to do so, subject to the
|
||||
following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
[0]: http://tools.ietf.org/html/rfc6979
|
||||
[1]: https://github.com/indutny/bn.js
|
||||
[2]: https://github.com/indutny/hash.js
|
||||
[3]: https://github.com/bitchan/eccrypto
|
||||
[4]: https://github.com/wanderer/secp256k1-node
|
58
web/node_modules/minimalistic-crypto-utils/lib/utils.js
generated
vendored
Normal file
58
web/node_modules/minimalistic-crypto-utils/lib/utils.js
generated
vendored
Normal file
|
@ -0,0 +1,58 @@
|
|||
'use strict';
|
||||
|
||||
var utils = exports;
|
||||
|
||||
function toArray(msg, enc) {
|
||||
if (Array.isArray(msg))
|
||||
return msg.slice();
|
||||
if (!msg)
|
||||
return [];
|
||||
var res = [];
|
||||
if (typeof msg !== 'string') {
|
||||
for (var i = 0; i < msg.length; i++)
|
||||
res[i] = msg[i] | 0;
|
||||
return res;
|
||||
}
|
||||
if (enc === 'hex') {
|
||||
msg = msg.replace(/[^a-z0-9]+/ig, '');
|
||||
if (msg.length % 2 !== 0)
|
||||
msg = '0' + msg;
|
||||
for (var i = 0; i < msg.length; i += 2)
|
||||
res.push(parseInt(msg[i] + msg[i + 1], 16));
|
||||
} else {
|
||||
for (var i = 0; i < msg.length; i++) {
|
||||
var c = msg.charCodeAt(i);
|
||||
var hi = c >> 8;
|
||||
var lo = c & 0xff;
|
||||
if (hi)
|
||||
res.push(hi, lo);
|
||||
else
|
||||
res.push(lo);
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
utils.toArray = toArray;
|
||||
|
||||
function zero2(word) {
|
||||
if (word.length === 1)
|
||||
return '0' + word;
|
||||
else
|
||||
return word;
|
||||
}
|
||||
utils.zero2 = zero2;
|
||||
|
||||
function toHex(msg) {
|
||||
var res = '';
|
||||
for (var i = 0; i < msg.length; i++)
|
||||
res += zero2(msg[i].toString(16));
|
||||
return res;
|
||||
}
|
||||
utils.toHex = toHex;
|
||||
|
||||
utils.encode = function encode(arr, enc) {
|
||||
if (enc === 'hex')
|
||||
return toHex(arr);
|
||||
else
|
||||
return arr;
|
||||
};
|
27
web/node_modules/minimalistic-crypto-utils/package.json
generated
vendored
Normal file
27
web/node_modules/minimalistic-crypto-utils/package.json
generated
vendored
Normal file
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"name": "minimalistic-crypto-utils",
|
||||
"version": "1.0.1",
|
||||
"description": "Minimalistic tools for JS crypto modules",
|
||||
"main": "lib/utils.js",
|
||||
"scripts": {
|
||||
"test": "mocha --reporter=spec test/*-test.js"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+ssh://git@github.com/indutny/minimalistic-crypto-utils.git"
|
||||
},
|
||||
"keywords": [
|
||||
"minimalistic",
|
||||
"utils",
|
||||
"crypto"
|
||||
],
|
||||
"author": "Fedor Indutny <fedor@indutny.com>",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/indutny/minimalistic-crypto-utils/issues"
|
||||
},
|
||||
"homepage": "https://github.com/indutny/minimalistic-crypto-utils#readme",
|
||||
"devDependencies": {
|
||||
"mocha": "^3.2.0"
|
||||
}
|
||||
}
|
28
web/node_modules/minimalistic-crypto-utils/test/utils-test.js
generated
vendored
Normal file
28
web/node_modules/minimalistic-crypto-utils/test/utils-test.js
generated
vendored
Normal file
|
@ -0,0 +1,28 @@
|
|||
'use strict';
|
||||
|
||||
const assert = require('assert');
|
||||
const utils = require('../');
|
||||
|
||||
describe('utils', () => {
|
||||
it('should convert to array', () => {
|
||||
assert.deepEqual(utils.toArray('1234', 'hex'), [ 0x12, 0x34 ]);
|
||||
assert.deepEqual(utils.toArray('1234'), [ 49, 50, 51, 52 ]);
|
||||
assert.deepEqual(utils.toArray('1234', 'utf8'), [ 49, 50, 51, 52 ]);
|
||||
assert.deepEqual(utils.toArray('\u1234234'), [ 18, 52, 50, 51, 52 ]);
|
||||
assert.deepEqual(utils.toArray([ 1, 2, 3, 4 ]), [ 1, 2, 3, 4 ]);
|
||||
});
|
||||
|
||||
it('should zero pad byte to hex', () => {
|
||||
assert.equal(utils.zero2('0'), '00');
|
||||
assert.equal(utils.zero2('01'), '01');
|
||||
});
|
||||
|
||||
it('should convert to hex', () => {
|
||||
assert.equal(utils.toHex([ 0, 1, 2, 3 ]), '00010203');
|
||||
});
|
||||
|
||||
it('should encode', () => {
|
||||
assert.deepEqual(utils.encode([ 0, 1, 2, 3 ]), [ 0, 1, 2, 3 ]);
|
||||
assert.deepEqual(utils.encode([ 0, 1, 2, 3 ], 'hex'), '00010203');
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue