code: func (p *PrivateKey) Decrypt(passphrase string) error {
  	if !p.Encrypted {
  		return nil
  	}
  	secretKey := p.deriveKey(passphrase)
  
  	decrypted, ok := secretbox.Open(nil, p.EncryptedData, &p.Nonce, &secretKey)
  	if !ok {
  		return fmt.Errorf("decryption error")
  	}
  	copy(p.privateKey[:], decrypted)
  
  	p.Encrypted = false
  	return nil
  }
docs: // Decrypt decrypts the private key