New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

crypto-swag-contract

Package Overview
Dependencies
Maintainers
2
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

crypto-swag-contract - npm Package Compare versions

Comparing version 0.4.0 to 0.6.0

src/finishContract.js

20

build/contracts/Migrations.json

@@ -67,10 +67,10 @@ {

],
"bytecode": "0x6060604052341561000f57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506102db8061005e6000396000f300606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100a05780638da5cb5b146100c9578063fdacd5761461011e575b600080fd5b341561007257600080fd5b61009e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610141565b005b34156100ab57600080fd5b6100b3610224565b6040518082815260200191505060405180910390f35b34156100d457600080fd5b6100dc61022a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561012957600080fd5b61013f600480803590602001909190505061024f565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610220578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b151561020b57600080fd5b6102c65a03f1151561021c57600080fd5b5050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102ac57806001819055505b505600a165627a7a723058204df546546d7026cdba4690c63794235e674ee2d640aff825c57c90809727c32a0029",
"deployedBytecode": "0x606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100a05780638da5cb5b146100c9578063fdacd5761461011e575b600080fd5b341561007257600080fd5b61009e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610141565b005b34156100ab57600080fd5b6100b3610224565b6040518082815260200191505060405180910390f35b34156100d457600080fd5b6100dc61022a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561012957600080fd5b61013f600480803590602001909190505061024f565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610220578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b151561020b57600080fd5b6102c65a03f1151561021c57600080fd5b5050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102ac57806001819055505b505600a165627a7a723058204df546546d7026cdba4690c63794235e674ee2d640aff825c57c90809727c32a0029",
"bytecode": "0x6060604052341561000f57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506102db8061005e6000396000f300606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100a05780638da5cb5b146100c9578063fdacd5761461011e575b600080fd5b341561007257600080fd5b61009e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610141565b005b34156100ab57600080fd5b6100b3610224565b6040518082815260200191505060405180910390f35b34156100d457600080fd5b6100dc61022a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561012957600080fd5b61013f600480803590602001909190505061024f565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610220578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b151561020b57600080fd5b6102c65a03f1151561021c57600080fd5b5050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102ac57806001819055505b505600a165627a7a72305820f3edf3b59c2ab5e94831359c8c9905b8b154bd1ad8fcebdc16824eb8f5bf945a0029",
"deployedBytecode": "0x606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100a05780638da5cb5b146100c9578063fdacd5761461011e575b600080fd5b341561007257600080fd5b61009e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610141565b005b34156100ab57600080fd5b6100b3610224565b6040518082815260200191505060405180910390f35b34156100d457600080fd5b6100dc61022a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561012957600080fd5b61013f600480803590602001909190505061024f565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610220578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b151561020b57600080fd5b6102c65a03f1151561021c57600080fd5b5050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102ac57806001819055505b505600a165627a7a72305820f3edf3b59c2ab5e94831359c8c9905b8b154bd1ad8fcebdc16824eb8f5bf945a0029",
"sourceMap": "26:488:0:-;;;178:58;;;;;;;;221:10;213:5;;:18;;;;;;;;;;;;;;;;;;26:488;;;;;;",
"deployedSourceMap": "26:488:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;347:165;;;;;;;;;;;;;;;;;;;;;;;;;;;;74:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;240:103;;;;;;;;;;;;;;;;;;;;;;;;;;347:165;409:19;161:5;;;;;;;;;;;147:19;;:10;:19;;;143:26;;;442:11;409:45;;460:8;:21;;;482:24;;460:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;143:26;347:165;;:::o;74:36::-;;;;:::o;50:20::-;;;;;;;;;;;;;:::o;240:103::-;161:5;;;;;;;;;;;147:19;;:10;:19;;;143:26;;;329:9;302:24;:36;;;;143:26;240:103;:::o",
"source": "pragma solidity ^0.4.17;\n\ncontract Migrations {\n address public owner;\n uint public last_completed_migration;\n\n modifier restricted() {\n if (msg.sender == owner) _;\n }\n\n function Migrations() public {\n owner = msg.sender;\n }\n\n function setCompleted(uint completed) public restricted {\n last_completed_migration = completed;\n }\n\n function upgrade(address new_address) public restricted {\n Migrations upgraded = Migrations(new_address);\n upgraded.setCompleted(last_completed_migration);\n }\n}\n",
"sourcePath": "/Users/nicolasmouso/Documents/Mule/Connect/crypto-swag-contract/contracts/Migrations.sol",
"sourcePath": "/home/mcampo/development/projects/crypto-swag-contract/contracts/Migrations.sol",
"ast": {
"absolutePath": "/Users/nicolasmouso/Documents/Mule/Connect/crypto-swag-contract/contracts/Migrations.sol",
"absolutePath": "/home/mcampo/development/projects/crypto-swag-contract/contracts/Migrations.sol",
"exportedSymbols": {

@@ -186,3 +186,3 @@ "Migrations": [

"overloadedDeclarations": [],
"referencedDeclaration": 93,
"referencedDeclaration": 310,
"src": "147:3:0",

@@ -290,3 +290,3 @@ "typeDescriptions": {

"overloadedDeclarations": [],
"referencedDeclaration": 93,
"referencedDeclaration": 310,
"src": "221:3:0",

@@ -723,3 +723,3 @@ "typeDescriptions": {

"legacyAST": {
"absolutePath": "/Users/nicolasmouso/Documents/Mule/Connect/crypto-swag-contract/contracts/Migrations.sol",
"absolutePath": "/home/mcampo/development/projects/crypto-swag-contract/contracts/Migrations.sol",
"exportedSymbols": {

@@ -835,3 +835,3 @@ "Migrations": [

"overloadedDeclarations": [],
"referencedDeclaration": 93,
"referencedDeclaration": 310,
"src": "147:3:0",

@@ -939,3 +939,3 @@ "typeDescriptions": {

"overloadedDeclarations": [],
"referencedDeclaration": 93,
"referencedDeclaration": 310,
"src": "221:3:0",

@@ -1377,3 +1377,3 @@ "typeDescriptions": {

"schemaVersion": "2.0.0",
"updatedAt": "2018-03-06T22:34:21.679Z"
"updatedAt": "2018-04-29T13:29:41.180Z"
}
{
"name": "crypto-swag-contract",
"version": "0.4.0",
"version": "0.6.0",
"scripts": {

@@ -8,2 +8,4 @@ "lint": "eslint config .",

"createContract": "node ./src/createContract.js",
"finishContract": "node ./src/finishContract.js",
"signContract": "node ./src/signContract.js",
"truffle:compile": "truffle compile",

@@ -10,0 +12,0 @@ "truffle:deploy": "truffle deploy",

@@ -15,3 +15,3 @@ const Web3 = require('web3');

const value = '1';
const buyerId = 'cdb963a0-4b13-45ad-ab99-3a0274cc8503';
const buyerId = '22209437-9400-4a8f-bdc3-a37427494675';
const productId = 'MU00-5024-DGH-S';

@@ -34,33 +34,2 @@

const initialBalance = await contract.methods.getBalance().call({ from: buyerAddress });
console.log('Initial balance:', web3.utils.fromWei(initialBalance, 'ether'));
const contractBuyerId = await contract.methods.buyerId().call({ from: buyerAddress });
console.log('Contract buyer id:', contractBuyerId);
const contractProductId = await contract.methods.productId().call({ from: buyerAddress });
console.log('Product id:', contractProductId);
// Fulfill delivery
const signatureParts = await signServerSide(buyerAddress, contractAddress);
try {
// await contract.methods.cancel().send({ from: buyerAddress, gas: 500000, gasPrice: 0 });
await contract.methods.fulfillDelivery(signatureParts.v, signatureParts.r, signatureParts.s).send({ from: sellerAddress, gas: 500000, gasPrice: 0 });
} catch(err) {
console.log('Failed to fulfillDelivery. Invalid signature');
}
const finalBalance = await contract.methods.getBalance().call({ from: buyerAddress });
console.log('Final balance:', web3.utils.fromWei(finalBalance, 'ether'));
const finalBuyerBalance = await web3.eth.getBalance(buyerAddress);
const finalSellerBalance = await web3.eth.getBalance(sellerAddress);
console.log('Final buyer balance:', web3.utils.fromWei(finalBuyerBalance, 'ether'));
console.log('Final seller balance:', web3.utils.fromWei(finalSellerBalance, 'ether'));
const sellerProfit = web3.utils.fromWei(`${finalSellerBalance - initialSellerBalance}`, 'ether');
console.log('Seller profit', sellerProfit);
console.log('Result:', finalBalance == 0 && sellerProfit == value ? '=)' : '=(');
async function createContract(buyerAddress, sellerAddress, productId, buyerId, value) {

@@ -80,29 +49,2 @@ const contract = new web3.eth.Contract(order.abi)

}
async function signServerSide(address, message) {
let messageHash = web3.utils.soliditySha3(message)
const signature = await web3.eth.sign(messageHash, address);
return splitSignature(signature);
}
async function signClientSide(privateKey, message) {
const Account = require('eth-lib/lib/account')
let messageHash = web3.utils.soliditySha3(message)
const ethMessage = web3.utils.toHex('\x19Ethereum Signed Message:\n32') + messageHash.substring(2)
const hash = web3.utils.sha3(ethMessage)
const signature = Account.sign(hash, privateKey)
return splitSignature(signature);
}
function splitSignature(signature) {
const v = web3.utils.hexToNumber('0x' + signature.slice(130, 132));
return {
r: signature.slice(0, 66),
s: '0x' + signature.slice(66, 130),
v: v >= 27 ? v : v + 27
};
}
})();

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

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