Crear cuenta Ethereum usando golang

Quiero crear una cuenta ethereum usando golang. Estoy siguiendo esta guía pero tengo errores justo al comienzo del código.

accountManager:=accounts.NewManager(".ethereum/rinkeby/keystore",accounts.StandardScryptN, accounts.StandardScryptP))

Error: referencia no resuelta "cuentas.StandardScryptN" y "cuentas.StandardScryptP"

Respuestas (2)

Creo que la guía está desactualizada.

StandardScryptNy StandardScryptPahora están en el keystorepaquete, no en el accountspaquete. Tendrá que actualizar su importen consecuencia.

señor, tiene razón. Reemplacé los parámetros pero aún cuentas. NewManager () no acepta esos parámetros
el error es el mismo? ¿ Cómo estás importando el keystorepaquete? ¿ Sigues importando el accountspaquete? ¿Puede actualizar su pregunta con un ejemplo de MCV del código que está fallando?
En realidad, accounts.NewManager() acepta una interfaz llamada "Backend" que forma parte del paquete "cuentas". Señor, el problema es que no sé cómo usarlo.
Señor, solo hay dos importaciones (cuentas, almacén de claves) y solo una línea de código que he mencionado en mi pregunta.
De acuerdo, no estoy seguro de cuál es el problema (sin jugar con él). Si no necesita explícitamente la funcionalidad del Administrador, otra opción sería simplemente crear un almacén de claves independiente, según la respuesta aquí .

Puedes usar las go-ethereumbibliotecas para generar una cuenta.

import "github.com/ethereum/go-ethereum/crypto"
import "encoding/hex"

// Create an account
key, err := crypto.GenerateKey()

// Get the address
address := crypto.PubkeyToAddress(key.PublicKey).Hex()
// 0x8ee3333cDE801ceE9471ADf23370c48b011f82a6

// Get the private key
privateKey := hex.EncodeToString(key.D.Bytes())
// 05b14254a1d0c77a49eae3bdf080f926a2df17d8e2ebdf7af941ea001481e57f
gracias por su respuesta. Pero quiero crear una cuenta protegida con contraseña