Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

bankid

Package Overview
Dependencies
Maintainers
1
Versions
35
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

bankid - npm Package Compare versions

Comparing version 0.1.3 to 0.1.4

cert/FPTestcert2_20150818_102329.pfx

8

index.js

@@ -1,2 +0,2 @@

const BankId = require('./lib/bankid');
const BankId = require('./src/bankid');

@@ -6,3 +6,4 @@ const pno = process.argv[2];

bankid.authenticateAndCollect(pno)
bankid.signAndCollect(pno, 'message')
.then(res => {

@@ -15,3 +16,4 @@ console.log(res);

// bankid.authenticate(pno).then(res => {
// bankid.sign(pno, 'foo bar message').then(res => {
// console.log(res);

@@ -18,0 +20,0 @@

@@ -11,7 +11,2 @@ 'use strict';

var certificates = {
testing: '\n-----BEGIN CERTIFICATE----- \nMIID8zCCAtugAwIBAgIRAODr4WfulmxifqSx8UEMbyIwDQYJKoZIhvcNAQEFBQAw eTEkMCIGA1UECgwbRmluYW5zaWVsbCBJRC1UZWtuaWsgQklEIEFCMRowGAYDVQQL DBFJbmZyYXN0cnVjdHVyZSBDQTE1MDMGA1UEAwwsQmFua0lEIFNTTCBSb290IENl cnRpZmljYXRpb24gQXV0aG9yaXR5IFRFU1QwHhcNMDgxMjA0MTMyNTU1WhcNMTkw NjAxMTIxODAwWjB5MSQwIgYDVQQKDBtGaW5hbnNpZWxsIElELVRla25payBCSUQg QUIxGjAYBgNVBAsMEUluZnJhc3RydWN0dXJlIENBMTUwMwYDVQQDDCxCYW5rSUQg U1NMIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgVEVTVDCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAOZh4Y7AkqrGb4LL/HCnqx0AmCdaHXKmJqbt NyIE3ppEnWYR6hGrZcSKRAYkU8ShS0Sf647Bj4tXiVQYg1msIvYgZ8h4QJqkqMYY 2nwJC2cDbtc3TL6ppXQVmIiS6wZewV1GL2xKUEPbKgDPiSgFyh3W1d/QihUwnwoa CGQ/crivftaNTnp4ZqQod9k35WfBy8xdB7cLHFeznfHoP1ZLOHza9bprT0F8YzEa u5CoCMxWPe0sY9aQC8oO3gKyohJrxnxTlDY2cMLXTCiUWIYh+ubybZ3Hqw1YFEmE 4IyiGyT9+LUChFhM0p53eR3GRUU7laxFVbVLuVdbIV0ZRL+0Eb8CAwEAAaN2MHQw DwYDVR0TAQH/BAUwAwEB/zARBgNVHSAECjAIMAYGBCoDBAUwDgYDVR0PAQH/BAQD AgEGMB0GA1UdDgQWBBSlaUGnPvmNu9R9LsDgulauQCwrvTAfBgNVHSMEGDAWgBSl aUGnPvmNu9R9LsDgulauQCwrvTANBgkqhkiG9w0BAQUFAAOCAQEAY1zWz1oV3ZMC 78uhGYA+j6Zktps9IXzIw3v1T3wtYclUoJI594w7vmTMqFY9z2mnms+gKTxCO/70 MpCNMgKSLj2bGsrMWHCvnDWpmYY5ZkDP2GWB6aqy+ehRmlYjUbPhjD44Xfjh/Stq 1yXCUfesLUHZDcBxpDspOwldWl7rhkE7QPj5hdSP85l04oIcnYiMyOPTt+4LNYN+ ncb0a/ZkJcUL7Q9NGJfmEhAmHcCpK8j1coSh36D8JMeSblVTBEWpnBMP5zXKAkzf OzZLGyy9RnV51NhRMRnQtDOFCZ9vQuuyCE/TZeOp4IgZctEvt2Aab23fx5jWBbzC EtEmq/VqaQ==\n-----END CERTIFICATE-----\n\t',
production: '\n-----BEGIN CERTIFICATE-----\nMIID6jCCAtKgAwIBAgIQSvZNAy61UF6qO2zWqvN/3zANBgkqhkiG9w0BAQUFADB0 MSQwIgYDVQQKDBtGaW5hbnNpZWxsIElELVRla25payBCSUQgQUIxGjAYBgNVBAsM EUluZnJhc3RydWN0dXJlIENBMTAwLgYDVQQDDCdCYW5rSUQgU1NMIFJvb3QgQ2Vy dGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgxMjE5MDg1OTAxWhcNMTkwNjAxMjE0 NTAwWjB0MSQwIgYDVQQKDBtGaW5hbnNpZWxsIElELVRla25payBCSUQgQUIxGjAY BgNVBAsMEUluZnJhc3RydWN0dXJlIENBMTAwLgYDVQQDDCdCYW5rSUQgU1NMIFJv b3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IB DwAwggEKAoIBAQCzqv7Rn43VFyTGicb+qjSGNeJga6GWQkMEXn9NvqCfknpaz4kf RbNHoQvtmw7CsiL83hMNU5y0EI6wC45Whn8ZXJ5/eqj1zBSu7QqKctEbMjWf6sf2 VUyE7lns6FxRFAgbhM2RS5LnWCfRsSgjKLXbJk7S2O/qVWdlxU1fAYfjbja1xhQm jArtvCYv9D2f8MBgH9sOsabVdLEKtiXj9NpBiXIi+c9DUpzvY1qnY02dsSudVwm3 IwJlEljLfjcBQDtJlm/7TbKsnqvW8s+NT6JBputUZT8Mqsv63meEbhxcq6vNcNKZ SgeHZDmr9lY2hmmVK9TcgfWHHkymUAWTGRQzAgMBAAGjeDB2MA8GA1UdEwEB/wQF MAMBAf8wEwYDVR0gBAwwCjAIBgYqhXBOAQQwDgYDVR0PAQH/BAQDAgEGMB0GA1Ud DgQWBBS2GCMB5GeakO2/WOqKJJXGAop6tTAfBgNVHSMEGDAWgBS2GCMB5GeakO2/ WOqKJJXGAop6tTANBgkqhkiG9w0BAQUFAAOCAQEAe4vukBbEjzsYC8Mv1xLcUQVD gYTgnqvP8Lr8yABfNfhh+iIoFK7QvVD3Z+bIBnGEGutB5K78UTadKINittSKA4T4 3Uy/p/blqew8Sqhv0I5MVlW71++HiPth4xwHAoxfe4oyTQaJRgls1CCsCBnuT9IF 6nGUNziC46RqIlhiY7zDzROtBWjqJzq+QvO07s73m+GPk8kZVwQrtyFT2IuYMH23 od/sRe2W5GClo2d62SBrzywYJZAaBNY9yl6weMdqWRqJz0mYZHrvLCQ1xrq4nvpL bMDfs1wD3vctSXLBFfBU9qw+CYTBN4UJ7BHQw1r2KGeAjm5grkL7Z7lQzTWSqw==\n-----END CERTIFICATE-----\n\t'
};
var BankId = function () {

@@ -25,4 +20,19 @@ function BankId() {

refreshInterval: 1000,
production: false
production: false,
// defaults for test environment
pfx: path.resolve(__dirname, '../cert/', 'FPTestcert2_20150818_102329.pfx'),
passphrase: 'qwerty123',
// certificate is provided by package by default
ca: undefined
}, options);
if (this.options.production) {
if (!options.pfx || !options.passphrase) {
throw Error('BankId requires the pfx and passphrase in production mode');
}
}
if (this.options.ca === undefined) {
this.options.ca = this.options.production ? path.resolve(__dirname, '../cert/', 'prod.ca') : path.resolve(__dirname, '../cert/', 'test.ca');
}
}

@@ -37,3 +47,5 @@

_this.getClient().then(function (client) {
client.Authenticate({ personalNumber: pno }, function (err, res) {
client.Authenticate({
personalNumber: pno
}, function (err, res) {
if (callback) callback(err, res);

@@ -47,8 +59,26 @@

}, {
key: 'sign',
value: function sign(pno, message, callback) {
var _this2 = this;
return new Promise(function (resolve, reject) {
_this2.getClient().then(function (client) {
client.Sign({
personalNumber: pno,
userVisibleData: new Buffer(message).toString('base64')
}, function (err, res) {
if (callback) callback(err, res);
if (err) reject(err);else resolve(res);
});
}, reject);
});
}
}, {
key: 'collect',
value: function collect(orderRef, callback) {
var _this2 = this;
var _this3 = this;
return new Promise(function (resolve, reject) {
_this2.getClient().then(function (client) {
_this3.getClient().then(function (client) {
client.Collect(orderRef, function (err, res) {

@@ -65,10 +95,24 @@ if (callback) callback(err, res);

value: function authenticateAndCollect(pno) {
var _this3 = this;
return this._methodAndCollect(this.authenticate.bind(this), pno);
}
}, {
key: 'signAndCollect',
value: function signAndCollect(pno, message) {
return this._methodAndCollect(this.sign.bind(this), pno, message);
}
}, {
key: '_methodAndCollect',
value: function _methodAndCollect(method) {
var _this4 = this;
for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
args[_key - 1] = arguments[_key];
}
return new Promise(function (resolve, reject) {
_this3.authenticate(pno).then(function (_ref) {
method.apply(undefined, args).then(function (_ref) {
var orderRef = _ref.orderRef;
var timer = setInterval(function () {
_this3.collect(orderRef).then(function (res) {
_this4.collect(orderRef).then(function (res) {
if (res.progressStatus === 'COMPLETE') {

@@ -82,3 +126,3 @@ clearInterval(timer);

});
}, _this3.options.refreshInterval);
}, _this4.options.refreshInterval);
}, reject);

@@ -90,12 +134,12 @@ });

value: function getClient() {
var _this4 = this;
var _this5 = this;
return new Promise(function (resolve, reject) {
if (_this4.client === undefined) {
_this4._createClient().then(function (client) {
_this4.client = client;
if (_this5.client === undefined) {
_this5._createClient().then(function (client) {
_this5.client = client;
resolve(client);
}, reject);
} else {
resolve(_this4.client);
resolve(_this5.client);
}

@@ -107,7 +151,9 @@ });

value: function _createClient() {
var pfx = fs.readFileSync(path.resolve(__dirname, '../files/', 'FPTestcert2_20150818_102329.pfx'));
var passphrase = 'qwerty123';
var ca = certificates.testing;
var opts = this.options;
var wsdlUrl = 'https://appapi.test.bankid.com/rp/v4?wsdl';
var ca = Buffer.isBuffer(opts.ca) ? opts.ca : fs.readFileSync(opts.ca, 'utf-8');
var pfx = Buffer.isBuffer(opts.pfx) ? opts.pfx : fs.readFileSync(opts.pfx);
var passphrase = opts.passphrase;
var wsdlUrl = opts.production ? 'https://appapi.bankid.com/rp/v4?wsdl' : 'https://appapi.test.bankid.com/rp/v4?wsdl';
var wsdlOptions = { pfx: pfx, passphrase: passphrase, ca: ca };

@@ -114,0 +160,0 @@

{
"name": "bankid",
"description": "",
"version": "0.1.3",
"keywords": ["bankid", "authentication", "backend"],
"version": "0.1.4",
"main": "lib/bankid.js",

@@ -6,0 +7,0 @@ "repository": {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc