Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial setup; import credentials, set admin registrar, generate cert… #21

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,12 @@ jspm_packages
# Custom
.idea
config/credentials/ibm_blockchain_credentials.json
ServiceCredentials.json

# Blockchain
Scripts/
certificate.pem
keyValStore-*

# The build Packages
chaincode/pkg
Expand Down
80 changes: 80 additions & 0 deletions 0.secure.blockchain.ibm.com.cert
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
-----BEGIN CERTIFICATE-----
MIIFajCCBFKgAwIBAgIQBH1Tg1FWaWiA5WYVgQkbxjANBgkqhkiG9w0BAQsFADBN
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E
aWdpQ2VydCBTSEEyIFNlY3VyZSBTZXJ2ZXIgQ0EwHhcNMTYwOTI3MDAwMDAwWhcN
MTkxMDAyMTIwMDAwWjCBjzELMAkGA1UEBhMCVVMxETAPBgNVBAgTCE5ldyBZb3Jr
MQ8wDQYDVQQHEwZBcm1vbmsxNDAyBgNVBAoTK0ludGVybmF0aW9uYWwgQnVzaW5l
c3MgTWFjaGluZXMgQ29ycG9yYXRpb24xJjAkBgNVBAMMHSouMC5zZWN1cmUuYmxv
Y2tjaGFpbi5pYm0uY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
wmCeUqCRWL6/JdTY4pzdcRWb/HuLLX5qDaSgdmarqw+o6TqPPpkXbLN7i7NItyQu
30NLmDi1ABM0gdk/QudamKMfItP+EwNt5LZiI8arRpwcYb5TyaikLF+d80fDE20S
6ScmwRtAge89XKHrdUU0mHsoFMm4x5FjjEmdqB2JZQnnM+79mvt/FSm9cihaM0Ko
sp5OUQg7xSbtHnVsPi+M8eD//jbUYEhHfWQIaOoynhpNaqLT82y7Ke8j7R8PDvRp
xSOoe0I5wii6KyN1mK8DoxZDFPp0Y+sIMOho+pvBc/GfqsZAxOAeqVBXj5LUuUF1
VhR0tcoqmDd0P0V730mXRQIDAQABo4ICATCCAf0wHwYDVR0jBBgwFoAUD4BhHIIx
YdUvKOeNRji0LOHG2eIwHQYDVR0OBBYEFF2B8/WJ2tILa+xPU9r6NG8xG7VZMEUG
A1UdEQQ+MDyCHSouMC5zZWN1cmUuYmxvY2tjaGFpbi5pYm0uY29tghswLnNlY3Vy
ZS5ibG9ja2NoYWluLmlibS5jb20wDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQG
CCsGAQUFBwMBBggrBgEFBQcDAjBrBgNVHR8EZDBiMC+gLaArhilodHRwOi8vY3Js
My5kaWdpY2VydC5jb20vc3NjYS1zaGEyLWc1LmNybDAvoC2gK4YpaHR0cDovL2Ny
bDQuZGlnaWNlcnQuY29tL3NzY2Etc2hhMi1nNS5jcmwwTAYDVR0gBEUwQzA3Bglg
hkgBhv1sAQEwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cuZGlnaWNlcnQuY29t
L0NQUzAIBgZngQwBAgIwfAYIKwYBBQUHAQEEcDBuMCQGCCsGAQUFBzABhhhodHRw
Oi8vb2NzcC5kaWdpY2VydC5jb20wRgYIKwYBBQUHMAKGOmh0dHA6Ly9jYWNlcnRz
LmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFNIQTJTZWN1cmVTZXJ2ZXJDQS5jcnQwDAYD
VR0TAQH/BAIwADANBgkqhkiG9w0BAQsFAAOCAQEAGgi76SK4hIEzaryTEpRjSbm9
gxreA32TxUT8Ho/tl5GJ4ILwndN4jkFVk1NPjqDY1z+iw2AcTpXKKyYZlx0lnPEc
MLq9xwDtTEF9q3UasizkATp6rsefoy/oZ25a4iMTu0KSB9TXDPd0O4mR1XKBksxC
Sa3nKsNeI8IOo/ac63duGK9KYuFnvJzST3tCXZ+iHwqndPU3GSVzyWsK4n9P1yDq
emww2qGDLXYQx1Wgw6kS8zqGmGvpJ5TV6Wz3gJf/hGwip3U5VZGSjrQr8YPMvWpN
eG+ckY/4GcDtHyV3RHu4QPxRrBAzUvEcgP/EMYcJOu+UOKMfDABx7FY7noOtEg==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIElDCCA3ygAwIBAgIQAf2j627KdciIQ4tyS8+8kTANBgkqhkiG9w0BAQsFADBh
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD
QTAeFw0xMzAzMDgxMjAwMDBaFw0yMzAzMDgxMjAwMDBaME0xCzAJBgNVBAYTAlVT
MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxJzAlBgNVBAMTHkRpZ2lDZXJ0IFNIQTIg
U2VjdXJlIFNlcnZlciBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
ANyuWJBNwcQwFZA1W248ghX1LFy949v/cUP6ZCWA1O4Yok3wZtAKc24RmDYXZK83
nf36QYSvx6+M/hpzTc8zl5CilodTgyu5pnVILR1WN3vaMTIa16yrBvSqXUu3R0bd
KpPDkC55gIDvEwRqFDu1m5K+wgdlTvza/P96rtxcflUxDOg5B6TXvi/TC2rSsd9f
/ld0Uzs1gN2ujkSYs58O09rg1/RrKatEp0tYhG2SS4HD2nOLEpdIkARFdRrdNzGX
kujNVA075ME/OV4uuPNcfhCOhkEAjUVmR7ChZc6gqikJTvOX6+guqw9ypzAO+sf0
/RR3w6RbKFfCs/mC/bdFWJsCAwEAAaOCAVowggFWMBIGA1UdEwEB/wQIMAYBAf8C
AQAwDgYDVR0PAQH/BAQDAgGGMDQGCCsGAQUFBwEBBCgwJjAkBggrBgEFBQcwAYYY
aHR0cDovL29jc3AuZGlnaWNlcnQuY29tMHsGA1UdHwR0MHIwN6A1oDOGMWh0dHA6
Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEdsb2JhbFJvb3RDQS5jcmwwN6A1
oDOGMWh0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEdsb2JhbFJvb3RD
QS5jcmwwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwHQYDVR0OBBYEFA+AYRyCMWHVLyjnjUY4tCzh
xtniMB8GA1UdIwQYMBaAFAPeUDVW0Uy7ZvCj4hsbw5eyPdFVMA0GCSqGSIb3DQEB
CwUAA4IBAQAjPt9L0jFCpbZ+QlwaRMxp0Wi0XUvgBCFsS+JtzLHgl4+mUwnNqipl
5TlPHoOlblyYoiQm5vuh7ZPHLgLGTUq/sELfeNqzqPlt/yGFUzZgTHbO7Djc1lGA
8MXW5dRNJ2Srm8c+cftIl7gzbckTB+6WohsYFfZcTEDts8Ls/3HB40f/1LkAtDdC
2iDJ6m6K7hQGrn2iWZiIqBtvLfTyyRRfJs8sjX7tN8Cp1Tm5gr8ZDOo0rwAhaPit
c+LJMto4JQtV05od8GiG7S5BNO98pVAdvzr508EIDObtHopYJeS4d60tbvVS3bR0
j6tJLp07kzQoH3jOlOrHvdPJbRzeXDLz
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD
QTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT
MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j
b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG
9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB
CSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97
nh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt
43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P
T19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4
gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO
BgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR
TLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw
DQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr
hMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg
06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF
PnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls
YSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk
CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4=
-----END CERTIFICATE-----
60 changes: 52 additions & 8 deletions app.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
var config = require('config');

// Integration
var cloudantIntegration = require('./utils/integration/cloudantIntegration');
//var cloudantIntegration = require('./utils/integration/cloudantIntegration');

var userService = require('./utils/integration/userService');

Expand All @@ -16,15 +16,18 @@ var arrayHelperFunctions = require('./utils/helpers/array');
var objectHelperFunctions = require('./utils/helpers/object');
var routingHelperFunctions = require('./utils/helpers/routing');

var blockchainSetup = require('./utils/blockchain/setup');
var blockchainSetup = require('./setup');
var blockchainInvoke = require('./utils/blockchain/invoker');
var blockchainQuery = require('./utils/blockchain/querent');


// Server Imports
var express = require('express'), http = require('http'), path = require('path'), fs = require('fs');

// Create Server
var app = express();

blockchainSetup.setup();
blockchainSetup.setupNetwork();

/**
* JSON Schema Validation
Expand Down Expand Up @@ -84,7 +87,7 @@ app.use(routingHelperFunctions.unlessRoute(["/auth", "/swagger.json","/socket.io
app.use(auth.allowOriginsMiddleware);


socketIntegration.initialise(8080);
//socketIntegration.initialise(8080);

// Development Only
if ('development' == app.get('env')) {
Expand Down Expand Up @@ -160,11 +163,11 @@ app.post('/auth/', validate({ body : schemas.authSchema }), function(request, re

/**
* @swagger
* /component/test/{username}:
* /component/test/{username}/invoke:
* get:
* tags:
* - blockchain-insurance-node-components
* description: Is a test endpoint
* description: Is a test endpoint for invokeing
* produces:
* - application/json
* parameters:
Expand All @@ -177,10 +180,15 @@ app.post('/auth/', validate({ body : schemas.authSchema }), function(request, re
* 200:
* description: Successful
*/
app.get('/' + apiPath.base + '/test/:username', function(request, response){
app.get('/' + apiPath.base + '/test/:username/invoke', function(request, response){
var responseBody = {};

blockchainSetup.setup();
blockchainSetup.enrollNewUser({"username": request.params.username, "affiliation": "group1"})
.then(function(user){
blockchainInvoke.invoke("addPolicy", ["2017-01-02", "2017-11-02", 300, "SC077"], user, function(){
console.log("hey hey");
})
});

responseBody.message = "Endpoint hit successfully";
response.setHeader('Content-Type', 'application/json');
Expand All @@ -189,6 +197,42 @@ app.get('/' + apiPath.base + '/test/:username', function(request, response){
return;
});

/**
* @swagger
* /component/test/{username}/query:
* get:
* tags:
* - blockchain-insurance-node-components
* description: Is a test endpoint for querying
* produces:
* - application/json
* parameters:
* - name: username
* description: the username
* in: path
* type: string
* required: true
* responses:
* 200:
* description: Successful
*/
app.get('/' + apiPath.base + '/test/:username/query', function(request, response){
var responseBody = {};

blockchainSetup.enrollNewUser({"username": request.params.username, "affiliation": "group1"})
.then(function(user){
blockchainQuery.query("retrieveAllPolicies", [], user, function(){
console.log("hey hey");
})
});

responseBody.message = "Endpoint hit successfully";
response.setHeader('Content-Type', 'application/json');
response.write(JSON.stringify(responseBody));
response.end();
return;
});

/**
* @swagger
* /claimant/{username}/claim:
Expand Down
1 change: 1 addition & 0 deletions chaincodeId
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ea7210d1432927023a9aff2a772eff1b15f4f5172563b5c7ecfd64260a961802
15 changes: 0 additions & 15 deletions config/credentials/ibm_blockchain_credentials.json

This file was deleted.

33 changes: 33 additions & 0 deletions config/default.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,39 @@
}
}
},
"blockchain": {
"chainName":"adc-ledger",
"chaincodeId": "bc3772852d812cdc7dbf5371fbf70b8d1dec04307d44828534582dd7639898fe",
"deployWaitTime":"120",
"user": {
"username": "JohnDoe",
"affiliation" : "group1"
},
"deployRequest":{
"chaincodePath":"chaincode",
"functionName":"init",
"args":[
"a",
"100",
"b",
"200"
]
},
"invokeRequest":{
"functionName":"invoke",
"args":[
"a",
"b",
"10"
]
},
"queryRequest":{
"functionName":"query",
"args":[
"a"
]
}
},
"swagger": {
"info": {
"title": "Node Example Swagger API",
Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
"errorhandler": "1.4.x",
"express": "4.13.x",
"express-jsonschema": "^1.1.6",
"hfc": "^0.6.5",
"ibm-blockchain-js": "^1.3.2",
"lodash": "^4.16.4",
"method-override": "2.3.x",
Expand Down
Loading