Smart Contract used in BISS(Updated after Hackathon)
BISS ์์คํ ์์ ์ฌ์ฉ๋๋ ์ค๋งํธ ์ปจํธ๋ํธ์ ๋๋ค.
- ๋๋ฐ์ด์ค๋ ์์ ์ Klaytn ์ง๊ฐ ์ฃผ์๋ฅผ sender๋ก sendData()๋ฅผ ํธ์ถํ๊ณ , ๋์์ค๋ receipt์ txHash๋ฅผ ์๋ฒ๋ก ๋ณด๋ ๋๋ค.
- ์๋ฒ๋ txHash์ ํธ๋์ญ์ ์ ์กฐํํ๊ณ , ์ ์ก๋ ๋ฐ์ดํฐ๋ฅผ ๊ตฌํฉ๋๋ค.
Biss.methods.saveData('ASDF').send({from: '0x81733c8d5ee8c76241c33537c072cd05d71b3d21'})
์ด๋ฆ | ํ์ | ์ค๋ช |
---|---|---|
_message |
string |
์ ์กํ ๋ฉ์ธ์ง |
๋จ์ํ ์ด๋ฐ ๊ธฐ๋ฅ๋ง ํ์ํ ์๋ฒ ๋ฐ END ๋๋ฐ์ด์ค๋ ๋ณธ ์ ์ฅ์๋ฅผ ํด๋ก ํ ํ์๊ฐ ์์ต๋๋ค.
https://apiscope.klaytn.com/api/transaction/{txHash}
๋ก GET ๋ฆฌํ์คํธ๋ฅผ ๋ณด๋ธ ๋ค["result"]["input"]
์ hex ๋ฐ์ดํฐ๋ฅผ ASCII๋ก ๋ณํํ๋ฉด ๋ฉ๋๋ค. ์๋์ ๊ฐ์ดcaver-js
์hexToAscii
๋ฅผ ์ด์ฉํ๊ฑฐ๋, ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ์ด์ฉํ ์ ์์ต๋๋ค.
var Caver = require('caver-js');
var caver = new Caver();
console.log(caver.utils.hexToAscii(hex));
ASDF
๊ฐ ๋ฐ์ดํฐ๋ผ๊ณ ํ๋ฉด, ๊ฒฐ๊ณผ๋ ๋์ถฉ ์๋ ๊ฐ์ ๊ฑฐ์์.
รjร asdf
์์ ์๋ 4๊ฐ ๋ฌธ์(รjร
)๋ฅผ ์ ๊ฑฐํด์ฃผ๊ณ ์ด์ฉํ๋ฉด ๋~! ๋ฌผ๋ก , hex ๋ฐ์ดํฐ๋ฅผ ASCII๋ก ๋ฐ๊พธ๋ ๊ณผ์ ์์ ์์ ๋ ์ข๊ฒ ์ง์!
Biss.methods.saveKey('1', 'I9L1bUJyY5289a0eec94a441e9624d5108c4f8c084').send({from: '0x81733c8d5ee8c76241c33537c072cd05d71b3d21'})
์ด๋ฆ | ํ์ | ์ค๋ช |
---|---|---|
_fileID |
string |
ํ์ผ ID |
_key |
string |
ํ์ผ key |
Biss.methods.saveHash(file_id, hash).send({from: '0x81733c8d5ee8c76241c33537c072cd05d71b3d21'})
์ด๋ฆ | ํ์ | ์ค๋ช |
---|---|---|
_fileID |
string |
ํ์ผ ID |
_hash |
string |
ํ์ผ hash |
Biss.methods.verifyHash('1', '931d9212c4071dc694a9d73e6533c7d4').call()
์ด๋ฆ | ํ์ | ์ค๋ช |
---|---|---|
_fileID |
string |
ํ์ผ ID |
_hash |
string |
ํ์ผ hash |
ํ์ | ์ค๋ช |
---|---|
bool |
๋ธ๋ก์ฒด์ธ์ ์ ์ฅ๋ _fileID ์ ํด์์ _hash ๊ฐ ๊ฐ์ ๊ฒฝ์ฐ true |