public static final class Protos.Key extends com.google.protobuf.GeneratedMessageLite<Protos.Key,Protos.Key.Builder> implements Protos.KeyOrBuilder
A key used to control Bitcoin spending. Either the private key, the public key or both may be present. It is recommended that if the private key is provided that the public key is provided too because deriving it is slow. If only the public key is provided, the key can only be used to watch the blockchain and verify transactions, and not for spending.Protobuf type
wallet.Key
Modifier and Type | Class and Description |
---|---|
static class |
Protos.Key.Builder
A key used to control Bitcoin spending.
|
static class |
Protos.Key.OutputScriptType
Protobuf enum
wallet.Key.OutputScriptType |
static class |
Protos.Key.Type
Protobuf enum
wallet.Key.Type |
com.google.protobuf.GeneratedMessageLite.DefaultInstanceBasedParser<T extends com.google.protobuf.GeneratedMessageLite<T,?>>, com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageLite.GeneratedExtension<ContainingType extends com.google.protobuf.MessageLite,Type>, com.google.protobuf.GeneratedMessageLite.MethodToInvoke, com.google.protobuf.GeneratedMessageLite.SerializedForm
Modifier and Type | Field and Description |
---|---|
static int |
ACCOUNT_PATH_FIELD_NUMBER |
static int |
CREATION_TIMESTAMP_FIELD_NUMBER |
static int |
DETERMINISTIC_KEY_FIELD_NUMBER |
static int |
DETERMINISTIC_SEED_FIELD_NUMBER |
static int |
ENCRYPTED_DATA_FIELD_NUMBER |
static int |
ENCRYPTED_DETERMINISTIC_SEED_FIELD_NUMBER |
static int |
LABEL_FIELD_NUMBER |
static int |
OUTPUT_SCRIPT_TYPE_FIELD_NUMBER |
static int |
PUBLIC_KEY_FIELD_NUMBER |
static int |
SECRET_BYTES_FIELD_NUMBER |
static int |
TYPE_FIELD_NUMBER |
Modifier and Type | Method and Description |
---|---|
protected java.lang.Object |
dynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
java.lang.Object arg0,
java.lang.Object arg1) |
int |
getAccountPath(int index)
The path to the root.
|
int |
getAccountPathCount()
The path to the root.
|
java.util.List<java.lang.Integer> |
getAccountPathList()
The path to the root.
|
long |
getCreationTimestamp()
Timestamp stored as millis since epoch.
|
static Protos.Key |
getDefaultInstance() |
Protos.DeterministicKey |
getDeterministicKey()
optional .wallet.DeterministicKey deterministic_key = 7; |
com.google.protobuf.ByteString |
getDeterministicSeed()
The seed for a deterministic key hierarchy.
|
Protos.EncryptedData |
getEncryptedData()
If the secret data is encrypted, then secret_bytes is missing and this field is set.
|
Protos.EncryptedData |
getEncryptedDeterministicSeed()
Encrypted version of the seed
|
java.lang.String |
getLabel()
User-provided label associated with the key.
|
com.google.protobuf.ByteString |
getLabelBytes()
User-provided label associated with the key.
|
Protos.Key.OutputScriptType |
getOutputScriptType()
Type of addresses (aka output scripts) to generate for receiving.
|
com.google.protobuf.ByteString |
getPublicKey()
The public EC key derived from the private key.
|
com.google.protobuf.ByteString |
getSecretBytes()
Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed.
|
Protos.Key.Type |
getType()
required .wallet.Key.Type type = 1; |
boolean |
hasCreationTimestamp()
Timestamp stored as millis since epoch.
|
boolean |
hasDeterministicKey()
optional .wallet.DeterministicKey deterministic_key = 7; |
boolean |
hasDeterministicSeed()
The seed for a deterministic key hierarchy.
|
boolean |
hasEncryptedData()
If the secret data is encrypted, then secret_bytes is missing and this field is set.
|
boolean |
hasEncryptedDeterministicSeed()
Encrypted version of the seed
|
boolean |
hasLabel()
User-provided label associated with the key.
|
boolean |
hasOutputScriptType()
Type of addresses (aka output scripts) to generate for receiving.
|
boolean |
hasPublicKey()
The public EC key derived from the private key.
|
boolean |
hasSecretBytes()
Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed.
|
boolean |
hasType()
required .wallet.Key.Type type = 1; |
static Protos.Key.Builder |
newBuilder() |
static Protos.Key.Builder |
newBuilder(Protos.Key prototype) |
static Protos.Key |
parseDelimitedFrom(java.io.InputStream input) |
static Protos.Key |
parseDelimitedFrom(java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Protos.Key |
parseFrom(byte[] data) |
static Protos.Key |
parseFrom(byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Protos.Key |
parseFrom(java.nio.ByteBuffer data) |
static Protos.Key |
parseFrom(java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Protos.Key |
parseFrom(com.google.protobuf.ByteString data) |
static Protos.Key |
parseFrom(com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Protos.Key |
parseFrom(com.google.protobuf.CodedInputStream input) |
static Protos.Key |
parseFrom(com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Protos.Key |
parseFrom(java.io.InputStream input) |
static Protos.Key |
parseFrom(java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static com.google.protobuf.Parser<Protos.Key> |
parser() |
createBuilder, createBuilder, dynamicMethod, dynamicMethod, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, emptyProtobufList, equals, getDefaultInstanceForType, getParserForType, getSerializedSize, hashCode, isInitialized, isInitialized, makeImmutable, mergeLengthDelimitedField, mergeUnknownFields, mergeVarintField, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBuilderForType, newMessageInfo, newRepeatedGeneratedExtension, newSingularGeneratedExtension, parseDelimitedFrom, parseDelimitedFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parsePartialFrom, parseUnknownField, registerDefaultInstance, toBuilder, toString, writeTo
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
public static final int TYPE_FIELD_NUMBER
public static final int SECRET_BYTES_FIELD_NUMBER
public static final int ENCRYPTED_DATA_FIELD_NUMBER
public static final int PUBLIC_KEY_FIELD_NUMBER
public static final int LABEL_FIELD_NUMBER
public static final int CREATION_TIMESTAMP_FIELD_NUMBER
public static final int DETERMINISTIC_KEY_FIELD_NUMBER
public static final int DETERMINISTIC_SEED_FIELD_NUMBER
public static final int ENCRYPTED_DETERMINISTIC_SEED_FIELD_NUMBER
public static final int ACCOUNT_PATH_FIELD_NUMBER
public static final int OUTPUT_SCRIPT_TYPE_FIELD_NUMBER
public boolean hasType()
required .wallet.Key.Type type = 1;
hasType
in interface Protos.KeyOrBuilder
public Protos.Key.Type getType()
required .wallet.Key.Type type = 1;
getType
in interface Protos.KeyOrBuilder
public boolean hasSecretBytes()
Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. If the secret is encrypted, or this is a "watching entry" then this is missing.
optional bytes secret_bytes = 2;
hasSecretBytes
in interface Protos.KeyOrBuilder
public com.google.protobuf.ByteString getSecretBytes()
Either the private EC key bytes (without any ASN.1 wrapping), or the deterministic root seed. If the secret is encrypted, or this is a "watching entry" then this is missing.
optional bytes secret_bytes = 2;
getSecretBytes
in interface Protos.KeyOrBuilder
public boolean hasEncryptedData()
If the secret data is encrypted, then secret_bytes is missing and this field is set.
optional .wallet.EncryptedData encrypted_data = 6;
hasEncryptedData
in interface Protos.KeyOrBuilder
public Protos.EncryptedData getEncryptedData()
If the secret data is encrypted, then secret_bytes is missing and this field is set.
optional .wallet.EncryptedData encrypted_data = 6;
getEncryptedData
in interface Protos.KeyOrBuilder
public boolean hasPublicKey()
The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing.
optional bytes public_key = 3;
hasPublicKey
in interface Protos.KeyOrBuilder
public com.google.protobuf.ByteString getPublicKey()
The public EC key derived from the private key. We allow both to be stored to avoid mobile clients having to do lots of slow EC math on startup. For DETERMINISTIC_MNEMONIC entries this is missing.
optional bytes public_key = 3;
getPublicKey
in interface Protos.KeyOrBuilder
public boolean hasLabel()
User-provided label associated with the key.
optional string label = 4;
hasLabel
in interface Protos.KeyOrBuilder
public java.lang.String getLabel()
User-provided label associated with the key.
optional string label = 4;
getLabel
in interface Protos.KeyOrBuilder
public com.google.protobuf.ByteString getLabelBytes()
User-provided label associated with the key.
optional string label = 4;
getLabelBytes
in interface Protos.KeyOrBuilder
public boolean hasCreationTimestamp()
Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's optional is that keys derived from a parent don't have this data.
optional int64 creation_timestamp = 5;
hasCreationTimestamp
in interface Protos.KeyOrBuilder
public long getCreationTimestamp()
Timestamp stored as millis since epoch. Useful for skipping block bodies before this point. The reason it's optional is that keys derived from a parent don't have this data.
optional int64 creation_timestamp = 5;
getCreationTimestamp
in interface Protos.KeyOrBuilder
public boolean hasDeterministicKey()
optional .wallet.DeterministicKey deterministic_key = 7;
hasDeterministicKey
in interface Protos.KeyOrBuilder
public Protos.DeterministicKey getDeterministicKey()
optional .wallet.DeterministicKey deterministic_key = 7;
getDeterministicKey
in interface Protos.KeyOrBuilder
public boolean hasDeterministicSeed()
The seed for a deterministic key hierarchy. Derived from the mnemonic, but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry.
optional bytes deterministic_seed = 8;
hasDeterministicSeed
in interface Protos.KeyOrBuilder
public com.google.protobuf.ByteString getDeterministicSeed()
The seed for a deterministic key hierarchy. Derived from the mnemonic, but cached here for quick startup. Only applicable to a DETERMINISTIC_MNEMONIC key entry.
optional bytes deterministic_seed = 8;
getDeterministicSeed
in interface Protos.KeyOrBuilder
public boolean hasEncryptedDeterministicSeed()
Encrypted version of the seed
optional .wallet.EncryptedData encrypted_deterministic_seed = 9;
hasEncryptedDeterministicSeed
in interface Protos.KeyOrBuilder
public Protos.EncryptedData getEncryptedDeterministicSeed()
Encrypted version of the seed
optional .wallet.EncryptedData encrypted_deterministic_seed = 9;
getEncryptedDeterministicSeed
in interface Protos.KeyOrBuilder
public java.util.List<java.lang.Integer> getAccountPathList()
The path to the root. Only applicable to a DETERMINISTIC_MNEMONIC key entry.
repeated uint32 account_path = 10 [packed = true];
getAccountPathList
in interface Protos.KeyOrBuilder
public int getAccountPathCount()
The path to the root. Only applicable to a DETERMINISTIC_MNEMONIC key entry.
repeated uint32 account_path = 10 [packed = true];
getAccountPathCount
in interface Protos.KeyOrBuilder
public int getAccountPath(int index)
The path to the root. Only applicable to a DETERMINISTIC_MNEMONIC key entry.
repeated uint32 account_path = 10 [packed = true];
getAccountPath
in interface Protos.KeyOrBuilder
index
- The index of the element to return.public boolean hasOutputScriptType()
Type of addresses (aka output scripts) to generate for receiving.
optional .wallet.Key.OutputScriptType output_script_type = 11;
hasOutputScriptType
in interface Protos.KeyOrBuilder
public Protos.Key.OutputScriptType getOutputScriptType()
Type of addresses (aka output scripts) to generate for receiving.
optional .wallet.Key.OutputScriptType output_script_type = 11;
getOutputScriptType
in interface Protos.KeyOrBuilder
public static Protos.Key parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferException
public static Protos.Key parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferException
public static Protos.Key parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferException
public static Protos.Key parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferException
public static Protos.Key parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferException
public static Protos.Key parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferException
public static Protos.Key parseFrom(java.io.InputStream input) throws java.io.IOException
java.io.IOException
public static Protos.Key parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
java.io.IOException
public static Protos.Key parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException
java.io.IOException
public static Protos.Key parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
java.io.IOException
public static Protos.Key parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException
java.io.IOException
public static Protos.Key parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
java.io.IOException
public static Protos.Key.Builder newBuilder()
public static Protos.Key.Builder newBuilder(Protos.Key prototype)
protected final java.lang.Object dynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method, java.lang.Object arg0, java.lang.Object arg1)
dynamicMethod
in class com.google.protobuf.GeneratedMessageLite<Protos.Key,Protos.Key.Builder>
public static Protos.Key getDefaultInstance()
public static com.google.protobuf.Parser<Protos.Key> parser()