Example #1
0
 async def get_innerhash_for_pubkey(self, pubkey: bytes):
     innerpuz = did_wallet_puzzles.create_innerpuz(
         pubkey,
         self.did_info.backup_ids,
         uint64(self.did_info.num_of_backup_ids_needed),
     )
     return innerpuz.get_tree_hash()
Example #2
0
 def puzzle_for_pk(self, pubkey: bytes) -> Program:
     innerpuz = did_wallet_puzzles.create_innerpuz(
         pubkey, self.did_info.backup_ids, self.did_info.num_of_backup_ids_needed
     )
     if self.did_info.origin_coin is not None:
         return did_wallet_puzzles.create_fullpuz(innerpuz, self.did_info.origin_coin.puzzle_hash)
     else:
         return did_wallet_puzzles.create_fullpuz(innerpuz, 0x00)
Example #3
0
 async def inner_puzzle_for_did_puzzle(self, did_hash: bytes32) -> Program:
     record: DerivationRecord = await self.wallet_state_manager.puzzle_store.get_derivation_record_for_puzzle_hash(
         did_hash.hex())
     inner_puzzle: Program = did_wallet_puzzles.create_innerpuz(
         bytes(record.pubkey),
         self.did_info.backup_ids,
         self.did_info.num_of_backup_ids_needed,
     )
     return inner_puzzle
Example #4
0
    async def get_new_innerpuz(self) -> Program:
        devrec = await self.wallet_state_manager.get_unused_derivation_record(self.standard_wallet.id())
        pubkey = bytes(devrec.pubkey)
        innerpuz = did_wallet_puzzles.create_innerpuz(
            pubkey,
            self.did_info.backup_ids,
            uint64(self.did_info.num_of_backup_ids_needed),
        )

        return innerpuz
Example #5
0
 def puzzle_for_pk(self, pubkey: bytes) -> Program:
     innerpuz = did_wallet_puzzles.create_innerpuz(
         pubkey, self.did_info.backup_ids, self.did_info.num_of_backup_ids_needed
     )
     if self.did_info.origin_coin is not None:
         return did_wallet_puzzles.create_fullpuz(innerpuz, self.did_info.origin_coin.name())
     else:
         # TODO: address hint error and remove ignore
         #       error: Argument 2 to "create_fullpuz" has incompatible type "int"; expected "bytes32"  [arg-type]
         return did_wallet_puzzles.create_fullpuz(innerpuz, 0x00)  # type: ignore[arg-type]
Example #6
0
 def puzzle_for_pk(self, pubkey: bytes) -> Program:
     innerpuz = did_wallet_puzzles.create_innerpuz(
         pubkey, self.did_info.backup_ids, self.did_info.num_of_backup_ids_needed
     )
     did = self.did_info.my_did
     return did_wallet_puzzles.create_fullpuz(innerpuz, did)