@@ -537,7 +537,14 @@
}
],
"unlinked_binary": "0x6060604052341561000c57fe5b604051602080610d7583398101604052515b60008054600160a060020a03338116600160a060020a03199283161790925560018054928416929091169190911790555b505b610d15806100606000396000f3006060604052361561010c5763ffffffff60e060020a60003504166305b9a719811461010e5780630747a7c21461013f578063229f4c9f146101755780632773249c1461019c578063319ab30c146101c557806331ae450b1461020057806333aff7fb146102365780633540e9041461026c578063429d955c1461029857806359a691c5146102c15780636a848ba1146102f55780637956696d1461031e5780637c19e69214610352578063804a293514610376578063878618911461039d57806392748957146103bb57806396b10b2d146103e45780639bd52e9614610418578063b399b89b1461044e578063b85b1f9614610475578063c92d77dc146104ab578063dbd5f2a5146104d4575bfe5b341561011657fe5b61012d600160a060020a036004351660243561050a565b60408051918252519081900360200190f35b341561014757fe5b610161600160a060020a0360043516602435604435610535565b604080519115158252519081900360200190f35b341561017d57fe5b61019a600160a060020a0360043516602435604435606435610590565b005b34156101a457fe5b61019a600160a060020a036004351660243560443560643515156105fb565b005b34156101cd57fe5b6101e7600160a060020a0360043516602435604435610674565b6040805192835260208301919091528051918290030190f35b341561020857fe5b6102106106c3565b60408051600160a060020a03938416815291909216602082015281519081900390910190f35b341561023e57fe5b610161600160a060020a03600435166024356044356106db565b604080519115158252519081900360200190f35b341561027457fe5b61027c610735565b60408051600160a060020a039092168252519081900360200190f35b34156102a057fe5b61019a600160a060020a03600435166024356044356064351515610745565b005b34156102c957fe5b61012d600160a060020a03600435166024356044356107b6565b60408051918252519081900360200190f35b34156102fd57fe5b61019a600160a060020a036004351660243560443560643515156107ff565b005b341561032657fe5b61012d600160a060020a036004351660243560443561087c565b60408051918252519081900360200190f35b341561035a57fe5b61019a600160a060020a03600435166024356044356108cd565b005b341561037e57fe5b61019a600160a060020a0360043516602435604435606435610936565b005b34156103a557fe5b61019a600160a060020a03600435166109a1565b005b34156103c357fe5b61019a600160a060020a036004351660243560443560643515156109fa565b005b34156103ec57fe5b61012d600160a060020a0360043516602435604435610a6e565b60408051918252519081900360200190f35b341561042057fe5b610161600160a060020a0360043516602435604435610abf565b604080519115158252519081900360200190f35b341561045657fe5b61019a600160a060020a0360043516602435604435606435610b13565b005b341561047d57fe5b610161600160a060020a0360043516602435604435610b79565b604080519115158252519081900360200190f35b34156104b357fe5b61019a600160a060020a03600435166024356044356064351515610bd2565b005b34156104dc57fe5b610161600160a060020a0360043516602435604435610c4d565b604080519115158252519081900360200190f35b600160a060020a03821660009081526003602090815260408083208484529091529020545b92915050565b6000610542848484610674565b60068190556005829055600160a060020a03861660009081526004602090815260408083209483529381528382209282529190915220600301546301000000900460ff1690505b9392505050565b60025433600160a060020a039081169116146105ac5760006000fd5b6105b7848484610674565b60068190556005829055600160a060020a038616600090815260046020908152604080832094835293815283822092825291909152206002018190555b5b50505050565b60025433600160a060020a039081169116146106175760006000fd5b610622848484610674565b60068190556005829055600160a060020a03861660009081526004602090815260408083209483529381528382209282529190915220600301805461ff001916610100831515021790555b5b50505050565b600160a060020a03831660009081526004602090815260408083208584528252808320848452909152812054819060ff16156106b45750829050816106ba565b50819050825b5b935093915050565b600054600154600160a060020a0391821691165b9091565b60006106e8848484610674565b60068190556005829055600160a060020a038616600090815260046020908152604080832094835293815283822092825291909152206003015462010000900460ff1690505b9392505050565b600254600160a060020a03165b90565b60025433600160a060020a039081169116146107615760006000fd5b61076c848484610674565b60068190556005829055600160a060020a03861660009081526004602090815260408083209483529381528382209282529190915220805460ff19168215151790555b5b50505050565b600160a060020a038316600090815260036020908152604080832085845290915281208054839081106107e557fe5b906000526020600020900160005b505490505b9392505050565b60025433600160a060020a0390811691161461081b5760006000fd5b610826848484610674565b60068190556005829055600160a060020a03861660009081526004602090815260408083209483529381528382209282529190915220600301805463ff00000019166301000000831515021790555b5b50505050565b6000610889848484610674565b60068190556005829055600160a060020a038616600090815260046020908152604080832094835293815283822092825291909152206002015490505b9392505050565b60025433600160a060020a039081169116146108e95760006000fd5b600160a060020a0383166000908152600360209081526040808320858452909152902080546001810161091c8382610c9e565b916000526020600020900160005b50829055505b5b505050565b60025433600160a060020a039081169116146109525760006000fd5b61095d848484610674565b60068190556005829055600160a060020a038616600090815260046020908152604080832094835293815283822092825291909152206001018190555b5b50505050565b60005433600160a060020a039081169116148015906109cf575060015433600160a060020a03908116911614155b156109da5760006000fd5b60028054600160a060020a031916600160a060020a0383161790555b5b50565b60025433600160a060020a03908116911614610a165760006000fd5b610a21848484610674565b60068190556005829055600160a060020a03861660009081526004602090815260408083209483529381528382209282529190915220600301805460ff19168215151790555b5b50505050565b6000610a7b848484610674565b60068190556005829055600160a060020a038616600090815260046020908152604080832094835293815283822092825291909152206001015490505b9392505050565b6000610acc848484610674565b60068190556005829055600160a060020a038616600090815260046020908152604080832094835293815283822092825291909152206003015460ff1690505b9392505050565b60025433600160a060020a03908116911614610b2f5760006000fd5b600160a060020a03841660009081526003602090815260408083208684529091529020805482919084908110610b6157fe5b906000526020600020900160005b50555b5b50505050565b6000610b86848484610674565b60068190556005829055600160a060020a0386166000908152600460209081526040808320948352938152838220928252919091522060030154610100900460ff1690505b9392505050565b60025433600160a060020a03908116911614610bee5760006000fd5b610bf9848484610674565b60068190556005829055600160a060020a03861660009081526004602090815260408083209483529381528382209282529190915220600301805462ff0000191662010000831515021790555b5b50505050565b6000610c5a848484610674565b60068190556005829055600160a060020a038616600090815260046020908152604080832094835293815283822092825291909152205460ff1690505b9392505050565b81548183558181151161093057600083815260209020610930918101908301610cc8565b5b505050565b61074291905b80821115610ce25760008155600101610cce565b5090565b905600a165627a7a7230582018c457949c03a187cc067bc514983e733e90f7144ed40dd50127ddf7cb1210950029",
"networks": {},
"networks": {
"1502700860591": {
"events": {},
"links": {},
"address": "0x70c42b93ebc3ee9d0cbaf24c4040657034ab116c",
"updated_at": 1502700999361
}
},
"schema_version": "0.0.5",
"updated_at": 1502690401693
"updated_at": 1502700999361
}
@@ -135,7 +135,14 @@
}
],
"unlinked_binary": "0x6060604052341561000c57fe5b604051602080610a3e83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6109f38061004b6000396000f300606060405263ffffffff60e060020a60003504166305b9a719811461004d5780634984b1171461007e5780635373fd06146100b457806359a691c51461012e578063eba45da114610162575bfe5b341561005557fe5b61006c600160a060020a0360043516602435610230565b60408051918252519081900360200190f35b341561008657fe5b6100a0600160a060020a03600435166024356044356102a9565b604080519115158252519081900360200190f35b34156100bc57fe5b6100d3600160a060020a036004351660243561032a565b604080516020808252835181830152835191928392908301918581019102808383821561011b575b80518252602083111561011b57601f1990920191602091820191016100fb565b5050509050019250505060405180910390f35b341561013657fe5b61006c600160a060020a03600435166024356044356104db565b60408051918252519081900360200190f35b341561016a57fe5b610181600160a060020a036004351660243561055c565b6040518080602001806020018381038352858181518152602001915080519060200190602002808383600083146101d3575b8051825260208311156101d357601f1990920191602091820191016101b3565b505050919091018481038352855181528551602091820192508187019102808383821561021b575b80518252602083111561021b57601f1990920191602091820191016101fb565b50505090500194505050505060405180910390f35b60008054604080516020908101849052815160e060020a6305b9a719028152600160a060020a03878116600483015260248201879052925192909316926305b9a719926044808301939282900301818787803b151561028b57fe5b6102c65a03f1151561029957fe5b5050604051519150505b92915050565b60008054604080516020908101849052815160e160020a635c2d8fcb028152600160a060020a03888116600483015260248201889052604482018790529251929093169263b85b1f96926064808301939282900301818787803b151561030b57fe5b6102c65a03f1151561031957fe5b5050604051519150505b9392505050565b610332610940565b60008080610341600182610952565b50600091505b60008054604080516020908101849052815160e060020a6305b9a719028152600160a060020a038a81166004830152602482018a9052925192909316936305b9a7199360448082019492918390030190829087803b15156103a457fe5b6102c65a03f115156103b257fe5b505060405151831015905061047e576103cc8585846104db565b60008054604080516020908101849052815160e160020a635c2d8fcb028152600160a060020a038b81166004830152602482018b9052604482018790529251959650919092169363b85b1f9693606480840194938390030190829087803b151561043257fe5b6102c65a03f1151561044057fe5b505060405151159050610472576001805480820161045e8382610952565b916000526020600020900160005b50829055505b5b600190910190610347565b60018054806020026020016040519081016040528092919081815260200182805480156104cb57602002820191906000526020600020905b815481526001909101906020018083116104b6575b505050505092505b505092915050565b60008054604080516020908101849052815160e060020a6359a691c5028152600160a060020a0388811660048301526024820188905260448201879052925192909316926359a691c5926064808301939282900301818787803b151561030b57fe5b6102c65a03f1151561031957fe5b5050604051519150505b9392505050565b610564610940565b61056c610940565b6000808061057b600182610952565b506000610589600282610952565b50600091505b60008054604080516020908101849052815160e060020a6305b9a719028152600160a060020a038b81166004830152602482018b9052925192909316936305b9a7199360448082019492918390030190829087803b15156105ec57fe5b6102c65a03f115156105fa57fe5b5050604051518310159050610888576106148686846104db565b60008054604080516020908101849052815160e160020a634dea974b028152600160a060020a038c81166004830152602482018c90526044820187905292519596509190921693639bd52e9693606480840194938390030190829087803b151561067a57fe5b6102c65a03f1151561068857fe5b50506040515115905061087b57600180548082016106a68382610952565b916000526020600020900160005b508290555060008054604080516020908101849052815160e060020a6333aff7fb028152600160a060020a038b81166004830152602482018b905260448201879052925192909316936333aff7fb9360648082019492918390030190829087803b151561071d57fe5b6102c65a03f1151561072b57fe5b5050604051511590506107dc57600280546001810161074a8382610952565b916000526020600020900160005b60008054604080516020908101849052815160e060020a637956696d028152600160a060020a038e81166004830152602482018e9052604482018a905292519290931693637956696d9360648082019492918390030190829087803b15156107bc57fe5b6102c65a03f115156107ca57fe5b5050604051519092555061087b915050565b60028054600181016107ee8382610952565b916000526020600020900160005b60008054604080516020908101849052815160e060020a6396b10b2d028152600160a060020a038e81166004830152602482018e9052604482018a9052925192909316936396b10b2d9360648082019492918390030190829087803b151561086057fe5b6102c65a03f1151561086e57fe5b5050604051519092555050505b5b5b60019091019061058f565b60016002818054806020026020016040519081016040528092919081815260200182805480156108d857602002820191906000526020600020905b815481526001909101906020018083116108c3575b505050505091508080548060200260200160405190810160405280929190818152602001828054801561092b57602002820191906000526020600020905b81548152600190910190602001808311610916575b50505050509050935093505b50509250929050565b60408051602081019091526000815290565b815481835581811511610976576000838152602090206109769181019083016109a6565b5b505050565b815481835581811511610976576000838152602090206109769181019083016109a6565b5b505050565b6109c491905b808211156109c057600081556001016109ac565b5090565b905600a165627a7a72305820f7c2b6d890899272bacefacbc9d428887136cbf990335e677dc6e7208691ce730029",
"networks": {},
"networks": {
"1502700860591": {
"events": {},
"links": {},
"address": "0xd5760d93f50d2445a3cfc5ff62b3183a45cb8263",
"updated_at": 1502700999361
}
},
"schema_version": "0.0.5",
"updated_at": 1502690401693
"updated_at": 1502700999361
}
@@ -87,8 +87,13 @@
"links": {},
"events": {},
"updated_at": 1501821643202
},
"1502700860591": {
"links": {},
"events": {},
"updated_at": 1502700999362
}
},
"schema_version": "0.0.5",
"updated_at": 1502171270158
"updated_at": 1502700999362
}
@@ -1,8 +1,8 @@
{
"contract_name": "Staker",
"abi": [],
"unlinked_binary": "0x60606040523415600b57fe5b5b60338060196000396000f30060606040525bfe00a165627a7a7230582018bb67d63f2b0781e031348049fe8633a47e42bdb2c25531ba8c31d85d08d30c0029",
"unlinked_binary": "0x60606040523415600b57fe5b5b60338060196000396000f30060606040525bfe00a165627a7a723058207a213e25243c88904bd20b90114a71c526a1d7df25f7b257a5a275aa0c7e855a0029",
"networks": {},
"schema_version": "0.0.5",
"updated_at": 1502693304040
"updated_at": 1502700998705
}
@@ -1,11 +1,11 @@
var testFoundationContract = "0x73a79e86cb10ba4495c42ccbd1de4d0c69008da4";
var testFoundationContract = "0xdd1c6c4fff2efd226f5f4df60b6ae5848b7973d6";

var DebtData = artifacts.require("./.sol");
var FriendData = artifacts.require("./.sol");
var DebtReader = artifacts.require("./.sol");
var FriendReader = artifacts.require("./.sol");
var Flux = artifacts.require("./.sol");
var Fid = artifacts.require("./.sol");
var DebtData = artifacts.require("./DebtData.sol");
var FriendData = artifacts.require("./FriendData.sol");
var DebtReader = artifacts.require("./DebtReader.sol");
var FriendReader = artifacts.require("./FriendReader.sol");
var Flux = artifacts.require("./Flux.sol");
var Fid = artifacts.require("./Fid.sol");

var ropstenFoundationContract = "0x406b716b01ab7c0acc75ceb9fadcc48ce39f5550";

@@ -24,29 +24,33 @@ module.exports = function(deployer, network, accounts) {
if ( network == "testrpc" ) {
var user2 = "timg"; //also admin2
var user3 = "jaredb";
var account1 = accounts[0];
var account2 = accounts[1];
var account3 = accounts[2];

deployer.deploy(DPData, account2, {from: accounts[0]}).then(function() {
return deployer.deploy(Friend, DPData.address, testFoundationContract, {from: accounts[0]});
deployer.deploy(DebtData, account2, {from: account1}).then(function() {
return deployer.deploy(FriendData, account2, {from: account1});
}).then(function() {
return deployer.deploy(FluxxxyDP, admin, DPData.address, Friend.address, testFoundationContract, {from: accounts[0]});
return deployer.deploy(FriendReader, FriendData.address);
}).then(function() {
return deployer.deploy(DebtReader, DebtData.address, FriendReader.address, testFoundationContract);
}).then(function() {
return deployer.deploy(Flux, admin, DebtData.address, FriendData.address, FriendReader.address, testFoundationContract);
}).then(function() {
return deployer.deploy(Fid, admin, testFoundationContract, DebtData.address, FriendData.address);
});

deployer.then(function() {
return DPData.deployed();
}).then(function(dpdata) {
instance = dpdata;
return instance.setFriendContract(Friend.address, {from: accounts[0]});
}).then(function(tx) {
return instance.setFluxContract(FluxxxyDP.address, {from: accounts[0]});
return DebtData.deployed();
}).then(function(dd) {
return dd.setFluxContract(Flux.address, {from: account1});
}).then(function(tx) {
return Friend.deployed();
}).then(function(f) {
instance = f;
return instance.addFriend(user2, user3, {from: account2});
return FriendData.deployed();
}).then(function(fd) {
return fd.setFluxContract(Flux.address, {from: account1});
}).then(function(tx) {
return instance.addFriend(user3, user2, {from: account3});
return Fid.deployed();
}).then(function(fid) {
return fid.setMyAddress(Fid.address, {from: account1});
});
}

@@ -58,23 +62,29 @@ module.exports = function(deployer, network, accounts) {
gas: fnGasLimit,
gasPrice: fiveGwei};

deployer.deploy(DPData, metamaskAddr, contractData).then(function() {
return deployer.deploy(Friend, DPData.address, ropstenFoundationContract, contractData);
deployer.deploy(DebtData, metamaskAddr, contractData).then(function() {
return deployer.deploy(FriendData, metamaskAddr, contractData);
}).then(function() {
return deployer.deploy(FluxxxyDP, admin, DPData.address, Friend.address, ropstenFoundationContract, contractData);
return deployer.deploy(FriendReader, FriendData.address, contractData);
}).then(function() {
return deployer.deploy(DebtReader, DebtData.address, FriendReader.address, ropstenFoundationContract, contractData);
}).then(function() {
return deployer.deploy(Flux, admin, DebtData.address, FriendData.address, FriendReader.address, ropstenFoundationContract, contractData);
}).then(function() {
return deployer.deploy(Fid, admin, ropstenFoundationContract, DebtData.address, FriendData.address);
});
deployer.then(function() {
return DPData.deployed();
}).then(function(fdata) {
instance = fdata;
return instance.setFriendContract(Friend.address, fnData);
return DebtData.deployed();
}).then(function(dd) {
return dd.setFluxContract(Flux.address, fnData);
}).then(function(tx) {
return instance.setFluxContract(FluxxxyDP.address, fnData);
}).then(function(d) {
return FluxxxyDP.deployed();
}).then(function(d) {
instance = d;
return instance.addCurrencyCode(currency, fnData);
return FriendData.deployed();
}).then(function(fd) {
return fd.setFluxContract(Flux.address, fnData);
}).then(function(tx) {
return Fid.deployed();
}).then(function(fid) {
return fid.setMyAddress(Fid.address);
});
}

@@ -15,3 +15,29 @@ Ethereum Smart Contracts for the Debt Protocol dApp that faciliates debt trackin

### security considerations for UCACs
* UCACs must verify whether they want a user to add debts between ANY two parties, or only debts they are personally involved in


## DebtData
```
```
## FriendData
```
```
## DebtReader
```
```
## FriendReader
```
```
## Flux
```
```
## Fid
```
```