Skip to content

Latest commit

 

History

History
155 lines (137 loc) · 7.05 KB

File metadata and controls

155 lines (137 loc) · 7.05 KB

블록체인과 관련하여 Front side에서 알아야할 내용

FRONT SIDE에서 사용하는 지갑 주소와 사용자 정보 Sample

  1. 지갑 주소

    • key info.txt의 [4]번 계정
      • 공개키 : 0x1c2ab35c73cd04279e8273832dc925d2db101d8e
      • 비밀키 : key info.txt 파일 참고
  2. (서비스 사용을 위한) 사용자 정보

    • userId : 'u1'
    • userAddress : 0x1c2ab35c73cd04279e8273832dc925d2db101d8e
    • 신뢰점수 : 1000
    • 현재 토큰 보유량 10000 BLOT
  3. 트랜잭션 결과값 중 유의미한 데이터

  • blockHash : 트랜잭션이 들어간 블록의 해쉬값
  • blockNumber : 트랜잭션이 들어간 블록의 번호
  • feePayer : 대납자의 계정주소
  • gasUsed : 트랜잭션을 수행하는데 든 수수료 비용(gas단위)
  • from : 트랜잭션을 일으킨 사람의 지갑주소
  • to : 트랜잭션을 일으킬 때 컨트랙트 내의 함수를 호출하게 되는데, 그 함수를 포함하는 컨트랙트의 주소
  • status : 트랜잭션 성공 여부
  • transactionHash : 트랜잭션 해쉬값 >> 오른쪽 링크는 klaytn에서 만들어놓은 트랜잭션 정보 확인 사이트 https://baobab.scope.klaytn.com/tx/트랜잭션_해쉬값
트랜잭션 실행 후 실제 결과값

{ blockHash:
   '0xb21b5be9c09a52b67b94c2853b5bae25443a5291cf662d5ee44ec9be93af853a',
  blockNumber: 11672167,
  contractAddress: null,
  feePayer: '0x4aff875cb544368fd51b8f7fda6d247582b5b87c',
  feePayerSignatures:
   [ { V: '0x7f6',
       R:
        '0x84b39f96866f100317a755e1194b06211f72e63f7a2a255866e515d8ad82989a',
       S:
        '0x36447bf577f8eb548db3b2a0dd58f95875a98b73d5363f4ac39d60bc3a562844' } ],
  from: '0x6f560ac6ede19461b28382816232c4dd50bd4843',
  gas: '0x7a120',
  gasPrice: '0x5d21dba00',
  gasUsed: 166881,
  input:
   '0x0b50734e000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000000c70726f6a6563744964313233000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000077772697465723100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a323031392e31312e303300000000000000000000000000000000000000000000',
  logs:
   [ { address: '0x8716fFbd1C7dDc1fd26c5D67788bc4b73c624988',
       topics: [Array],
       data:
        '0x000000000000000000000000000000000000000000000000000000000000001e',
       blockNumber: 11672167,
       transactionHash:
        '0x19ac917c43d6b07ae39413b48a4fcde797773fc55dcc24f424cb86d05c5925bc',
       transactionIndex: 0,
       blockHash:
        '0xb21b5be9c09a52b67b94c2853b5bae25443a5291cf662d5ee44ec9be93af853a',
       logIndex: 0,
       id: 'log_df4236a7' },
     { address: '0xAB69E33e6D3cad61CBc8F05787299dA8319f1aB6',
       topics: [Array],
       data:
        '0x00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000a323031392e31312e303300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c70726f6a65637449643132330000000000000000000000000000000000000000',
       blockNumber: 11672167,
       transactionHash:
        '0x19ac917c43d6b07ae39413b48a4fcde797773fc55dcc24f424cb86d05c5925bc',
       transactionIndex: 0,
       blockHash:
        '0xb21b5be9c09a52b67b94c2853b5bae25443a5291cf662d5ee44ec9be93af853a',
       logIndex: 1,
       id: 'log_b94ab2e0' } ],
  logsBloom:
   '0x0000000000000000000000000000000000000000000000000000000000000000000000000002000000000000040800000000000000000000000000000000000000000000200000800000000800000000000000000000000000000000000000000000000002000000000000000000080000000000000000000000c010000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000002000000000000000000000000000000001400000000000000000020004000000000000000080000400000000000000100000000000000000000000000',
  nonce: '0x30',
  senderTxHash:
   '0x5ffebff91da941513350ce6e3ef903aa2ff6ad7a1b19dc7ea793370ee31756ef',
  signatures:
   [ { V: '0x7f6',
       R:
        '0x81f61e5e66138d722b5ad968f38a232eec7891bbb0d98f3836b46d4df4cd2314',
       S:
        '0x4aa4d7a2ce5684577d014de72ccfc706cb37505c8489b4bd8821c30ab2382b81' } ],
  status: true,
  to: '0xab69e33e6d3cad61cbc8f05787299da8319f1ab6',
  transactionHash:
   '0x19ac917c43d6b07ae39413b48a4fcde797773fc55dcc24f424cb86d05c5925bc',
  transactionIndex: 0,
  type: 'TxTypeFeeDelegatedSmartContractExecution',
  typeInt: 49,
  value: '0x0' }

구현 내용

  • /src/store의 action.js에 스마트 컨트랙트 내 함수를 호출하는 로직 구현
  • /src/components/layout/SeungSooTest.vue파일에 /src/store/action.js 내 함수를 호출하는 로직 구현



블록체인과 관련하여 Backend에서 알아야할 내용

Backend에서 사용하는 지갑 주소, 사용자 정보, 프로젝트 정보 Sample

  1. 지갑 주소

    • key info.txt의 [0]번 계정 == 대납자 == 컨트랙트 소유자
      • 공개키 : 0x4aff875cb544368fd51b8f7fda6d247582b5b87c
      • 비밀키 : key info.txt 파일 참고
  2. (테스트를 위한) 사용자 정보

    • userId : 'nkw'
    • key info.txt의 [0]번 계정
      • userAddress(공개키) : 0x4aff875cb544368fd51b8f7fda6d247582b5b87c
    • 현재 토큰 보유량 : 9000 BLOT
    • 신뢰점수 : 1000
  3. 샘플 프로젝트 정보 및 번역/평가 기록

    • projectId : '5d84a8e73c9f67a60a0d42f1'

    • writerId : 'nkw'

    • deadline : '2019.11.30'

    • reward : 1000 BLOT

    • 번역 참여자 => 800 BLOT 보상금 할당

      • devNam
        • 70% => 800 Blot * 70% = 560 BLOT
        • 계정주소 : key info.txt의 [1]번 계정 0x6f560ac6ede19461b28382816232c4dd50bd4843
        • 현재 신뢰 점수 : 1000 점
        • 현재 잔고 : 0 BLOT
      • devKu
        • 20% => 160 BLOT
        • 계정주소 : key info.txt의 [2]번 계정 0x19f74f83114ad84736df48534f3b0c569ebcd419
        • 현재 신뢰 점수 : 1000 점
        • 현재 잔고 : 0 BLOT
      • devKim
        • 10% => 80 BLOT
        • 계정주소 : key info.txt의 [3]번 계정 0xad4abd5ba764b4cbd1c97219bb42365749f6d03c
        • 현재 신뢰 점수 : 1000 점
        • 현재 잔고 : 0 BLOT
    • 평가자 => 100 BLOT 보상금 할당

      • devKu

        • 40% => 100 Blot * 40% = 40 BLOT
      • devKim

        • 40% => 40 BLOT
      • devNam

        • 20% => 20 BLOT
  4. 신뢰 점수 조정 함수 파라미터

    • projectId : string
    • userID : string
    • value : int
    • reason : int
      • 0 : 번역 활동에 따른 신뢰도 증가
      • 1 : 평가 활동에 따른 신뢰도 증가
      • 2 : 월별 신뢰 점수 차감
    • totalUserReliability : int