HomeArtTechHackBlockchain
ONLINE ·
Index
/
Blockchain101
/
Article

ใช้ Go สร้าง account แบบ Multi Sign

Operator
Khomkrid Lerdprasert
Filed
November 07, 2021
Channel
Blockchain101
Read
~1 min
ใช้ Go สร้าง account แบบ Multi Sign
package main
import (
"log"
"github.com/stellar/go/clients/horizonclient"
"github.com/stellar/go/keypair"
"github.com/stellar/go/network"
"github.com/stellar/go/txnbuild"
)
func main() {
source := "secret"
destination := "address"
sign1Address := "address"
sign1Key := "secret"
sign2Address := "GDFOEXX3UY3JMPUR3T6YH2VSVB5QJCDQIPPAD3CVCT56ZVVIOKUWWGA2"
sign3Address := "GC4ABHKWEFMLO77C33VDQWHSIIPNZ3JKMEKPKCRLOVCRWWZQQ7LHK7HT"
client := horizonclient.DefaultTestNetClient
destAccountRequest := horizonclient.AccountRequest{AccountID: destination}
destinationAccount, err := client.AccountDetail(destAccountRequest)
if err != nil {
panic(err)
}
sourceKeyPair := keypair.MustParseFull(source)
sourceAccountRequest := horizonclient.AccountRequest{AccountID: sourceKeyPair.Address()}
sourceAccount, err := client.AccountDetail(sourceAccountRequest)
if err != nil {
panic(err)
}
tx, err := txnbuild.NewTransaction(
txnbuild.TransactionParams{
SourceAccount: &sourceAccount,
IncrementSequenceNum: true,
BaseFee: txnbuild.MinBaseFee,
Timebounds: txnbuild.NewInfiniteTimeout(),
Operations: []txnbuild.Operation{
&txnbuild.SetOptions{
Signer: &txnbuild.Signer{
Address: sign1Address,
Weight: 1,
},
},
&txnbuild.SetOptions{
Signer: &txnbuild.Signer{
Address: sign2Address,
Weight: 1,
},
},
&txnbuild.SetOptions{
Signer: &txnbuild.Signer{
Address: sign3Address,
Weight: 1,
},
},
&txnbuild.Payment{
Destination: destinationAccount.AccountID,
Amount: "10",
Asset: txnbuild.NativeAsset{},
},
},
},
)
if err != nil {
panic(err)
}
tx, err = tx.Sign(network.TestNetworkPassphrase, keypair.MustParseFull(sign1Key))
if err != nil {
panic(err)
}
resp, err := horizonclient.DefaultTestNetClient.SubmitTransaction(tx)
if err != nil {
panic(err)
}
log.Println("Successful Transaction:")
log.Println("Ledger:", resp.Ledger)
log.Println("Hash:", resp.Hash)
}

◎ Tags

##blockchain##stellar##จดบันทึก
Khomkrid Lerdprasert
Operator

Khomkrid Lerdprasert

Technical Lead — building AI-powered platforms, omni-channel chat systems, and telemedicine solutions with Go, Next.js & clean architecture. 20+ years shipping software from crypto wallets to e-learning systems. Bangkok-based. Writes code late at night, brews beer on weekends.

GithubInstagram
Previous · transmission
ใช้ tendermint cosmos สร้าง Blockchain สำหรับ การทำ Beer Craft
Next · transmission
ใช้ Go Create Transaction และแนบ key value เพื่อโอนเงินใน stellar
Metadata
Channel
Blockchain101
Filed
November 07, 2021
Read
~1 min
Language
TH / EN
Transmit

Related

มาสร้าง Stellar Account ด้วย Go SDK กัน
Khomkrid Lerdprasert
November 07, 2021
1 min
aofiee.dev
signal / noise / code · craft
© 2019 – 2026, Khomkrid Lerdprasert.
All transmissions logged.
No newsletter. No profiling. Cookies require consent.
PGP · 7F3D 2024 A21E B584 · 0x7F3D
Channels
  • Art & Culture
  • Technology
  • Hack 101
  • Blockchain 101
  • Archive / All posts
— END OF TRANSMISSION —
// powered by curiosity, coffee, & wuxia
BKK · 13°45′N · 100°30′E