Inc. • Joined LayerX in 2018 October • Corda Certified Developer • Core maintainer of Cordage (Corda Interoperability Solution OSS) • From Keio University Jun Murai Lab. Bcali Group (https://bcali.org/) • Developed multiple software that uses blockchain technology such as Quorum/Corda/Ethereum ◦ e.g. MUFG, MITSUI & CO., LTD. etc @etaroid
: Alice issuer : BOJ JPY State amount : 100 owner : Bob issuer : BOJ Tx Transfer JPY State amount : owner : issuer : JPY State amount : 100 owner : Alice issuer : BOJ JPY State amount : 100 owner : Bob issuer : BOJ Tx Transfer Contract Validation State Flow Contract : Txを作成する : Txの状態遷移 validation code
: Alice issuer : BOJ JPY State amount : 100 owner : Bob issuer : BOJ Tx Transfer Alice Sig Contract Validation JPY State amount : 100 owner : Alice issuer : BOJ JPY State amount : 100 owner : Bob issuer : BOJ Received Tx Transfer Alice Sig Contract Validation TransferJPYResponderFlow Bob Sig Notary Check Content
: Alice issuer : BOJ JPY State amount : 100 owner : Bob issuer : BOJ Tx Transfer Alice Sig Notary Bob Sig ---------- -------------- ------- : ------- …. ------- : ------- Tx ----------- ------- -------- ------- : ------- …. ------- : ------- Check double-spent Notary Sig
: Alice issuer : BOJ JPY State amount : 100 owner : Bob issuer : BOJ Tx Transfer Alice Sig Bob Sig Notary Sig Notary JPY State amount : 100 owner : Alice issuer : BOJ JPY State amount : 100 owner : Bob issuer : BOJ Tx Transfer Alice Sig Bob Sig Notary Sig Share Save to Vault Save to Vault
Nodeが同じContractを動かしていることを保証する必要がある TransferJPYFlow JPY State amount : 50 owner : Alice issuer : BOJ JPY State amount : 100 owner : Bob issuer : BOJ Tx Transfer Alice Sig 改造Contract Validation JPY State JPY State ----------- : ---- Received Tx Transfer TransferJPYResponderFlow ----------- : ---- Signature Constraint Error Signature Constraints (推奨) ・同じ署名が付いている jarファイルを使用していればプロト コルに従っているとみなす ・各NodeはTXのやり取りをする際に相手 Nodeが使用して いるcordapp.jarの署名をcheck ex.) BNOが作成したcordapp.jarに自身のkeyで署名をし、 それを各Nodeに配布 Hash Constraints Compatibility Zone Whitelisted Constraint ・Hashが同じjarしか許可しない。つまり、 Updateの許容無し。最も 厳しい制約。 ・network parametersで指定されたjarしか許可しない
State amount : 100 owner : Alice issuer : BOJ JPY State amount : 100 owner : Bob issuer : BOJ Tx Transfer Alice Sig Contract Validation JPY State JPY State ----------- : ---- Received Tx Transfer TransferJPYResponderFlow ----------- : ---- Contract Constraints & Flow Customization ・cordapp.jarをcontract.jarとworkflow.jarに分け、 contract.jarにのみSignature Constraintsを付与 ・workflow.jarにはconstraintsは付けない ResponderFlowの中で独自のビジネスロジックを記 述してカスタマイズすることを想定 Contract Validation Check Content Error