cosmos-sdk/crypto/hd/hd.pb.go

423 lines
11 KiB
Go
Raw Normal View History

refactor!: Keyring migration (#9695) <!-- The default pull request template is for types feat, fix, or refactor. For other templates, add one of the following parameters to the url: - template=docs.md - template=other.md --> ## Description The draft PR #9222 Closes: #7108 <!-- Add a description of the changes that this PR introduces and the files that are the most critical to review. --> - implement proto definition for `Record` - rename `Info.go` to `legacyInfo.go` within `keyring` package - implement CLI `migrate` command that migrates all keys from legacyInfo to proto according to @robert-zaremba migration [algorithm](https://github.com/cosmos/cosmos-sdk/pull/9222/#discussion_r624683839) - remove legacy keybase entirely. - add `Migrate` and `MigrateAll` functions in `keyring.go` for single key and all keys migration - add tests - fix tests --- ### Author Checklist *All items are required. Please add a note to the item if the item is not applicable and please add links to any relevant follow up issues.* I have... - [ ] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] added `!` to the type prefix if API or client breaking change - [ ] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#pr-targeting)) - [ ] provided a link to the relevant issue or specification - [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/master/docs/building-modules) - [x] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#testing) - [ ] added a changelog entry to `CHANGELOG.md` - [ ] included comments for [documenting Go code](https://blog.golang.org/godoc) - [ ] updated the relevant documentation or specification - [x] reviewed "Files changed" and left comments if necessary - [ ] confirmed all CI checks have passed ### Reviewers Checklist *All items are required. Please add a note if the item is not applicable and please add your handle next to the items reviewed if you only reviewed selected items.* I have... - [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] confirmed `!` in the type prefix if API or client breaking change - [ ] confirmed all author checklist items have been addressed - [ ] reviewed state machine logic - [ ] reviewed API design and naming - [ ] reviewed documentation is accurate - [ ] reviewed tests and test coverage - [ ] manually tested (if applicable)
2021-09-20 05:02:15 -07:00
// Code generated by protoc-gen-gogo. DO NOT EDIT.
// source: cosmos/crypto/hd/v1/hd.proto
package hd
import (
fmt "fmt"
_ "github.com/gogo/protobuf/gogoproto"
proto "github.com/gogo/protobuf/proto"
io "io"
math "math"
math_bits "math/bits"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
// BIP44Params is used as path field in ledger item in Record.
type BIP44Params struct {
// purpose is a constant set to 44' (or 0x8000002C) following the BIP43 recommendation
Purpose uint32 `protobuf:"varint,1,opt,name=purpose,proto3" json:"purpose,omitempty"`
// coin_type is a constant that improves privacy
CoinType uint32 `protobuf:"varint,2,opt,name=coin_type,json=coinType,proto3" json:"coin_type,omitempty"`
// account splits the key space into independent user identities
Account uint32 `protobuf:"varint,3,opt,name=account,proto3" json:"account,omitempty"`
// change is a constant used for public derivation. Constant 0 is used for external chain and constant 1 for internal chain.
Change bool `protobuf:"varint,4,opt,name=change,proto3" json:"change,omitempty"`
// address_index is used as child index in BIP32 derivation
AddressIndex uint32 `protobuf:"varint,5,opt,name=address_index,json=addressIndex,proto3" json:"address_index,omitempty"`
}
func (m *BIP44Params) Reset() { *m = BIP44Params{} }
func (*BIP44Params) ProtoMessage() {}
func (*BIP44Params) Descriptor() ([]byte, []int) {
return fileDescriptor_cf10f1fb5e778a8d, []int{0}
}
func (m *BIP44Params) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *BIP44Params) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
if deterministic {
return xxx_messageInfo_BIP44Params.Marshal(b, m, deterministic)
} else {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
}
func (m *BIP44Params) XXX_Merge(src proto.Message) {
xxx_messageInfo_BIP44Params.Merge(m, src)
}
func (m *BIP44Params) XXX_Size() int {
return m.Size()
}
func (m *BIP44Params) XXX_DiscardUnknown() {
xxx_messageInfo_BIP44Params.DiscardUnknown(m)
}
var xxx_messageInfo_BIP44Params proto.InternalMessageInfo
func init() {
proto.RegisterType((*BIP44Params)(nil), "cosmos.crypto.hd.v1.BIP44Params")
}
func init() { proto.RegisterFile("cosmos/crypto/hd/v1/hd.proto", fileDescriptor_cf10f1fb5e778a8d) }
var fileDescriptor_cf10f1fb5e778a8d = []byte{
// 266 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x49, 0xce, 0x2f, 0xce,
0xcd, 0x2f, 0xd6, 0x4f, 0x2e, 0xaa, 0x2c, 0x28, 0xc9, 0xd7, 0xcf, 0x48, 0xd1, 0x2f, 0x33, 0xd4,
0xcf, 0x48, 0xd1, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x12, 0x86, 0xc8, 0xea, 0x41, 0x64, 0xf5,
0x32, 0x52, 0xf4, 0xca, 0x0c, 0xa5, 0x44, 0xd2, 0xf3, 0xd3, 0xf3, 0xc1, 0xf2, 0xfa, 0x20, 0x16,
0x44, 0xa9, 0xd2, 0x42, 0x46, 0x2e, 0x6e, 0x27, 0xcf, 0x00, 0x13, 0x93, 0x80, 0xc4, 0xa2, 0xc4,
0xdc, 0x62, 0x21, 0x09, 0x2e, 0xf6, 0x82, 0xd2, 0xa2, 0x82, 0xfc, 0xe2, 0x54, 0x09, 0x46, 0x05,
0x46, 0x0d, 0xde, 0x20, 0x18, 0x57, 0x48, 0x9a, 0x8b, 0x33, 0x39, 0x3f, 0x33, 0x2f, 0xbe, 0xa4,
0xb2, 0x20, 0x55, 0x82, 0x09, 0x2c, 0xc7, 0x01, 0x12, 0x08, 0xa9, 0x2c, 0x48, 0x05, 0x69, 0x4b,
0x4c, 0x4e, 0xce, 0x2f, 0xcd, 0x2b, 0x91, 0x60, 0x86, 0x68, 0x83, 0x72, 0x85, 0xc4, 0xb8, 0xd8,
0x92, 0x33, 0x12, 0xf3, 0xd2, 0x53, 0x25, 0x58, 0x14, 0x18, 0x35, 0x38, 0x82, 0xa0, 0x3c, 0x21,
0x65, 0x2e, 0xde, 0xc4, 0x94, 0x94, 0xa2, 0xd4, 0xe2, 0xe2, 0xf8, 0xcc, 0xbc, 0x94, 0xd4, 0x0a,
0x09, 0x56, 0xb0, 0x3e, 0x1e, 0xa8, 0xa0, 0x27, 0x48, 0xcc, 0x8a, 0x65, 0xc6, 0x02, 0x79, 0x06,
0x27, 0x97, 0x13, 0x0f, 0xe5, 0x18, 0x4e, 0x3c, 0x92, 0x63, 0xbc, 0xf0, 0x48, 0x8e, 0xf1, 0xc1,
0x23, 0x39, 0xc6, 0x09, 0x8f, 0xe5, 0x18, 0x2e, 0x3c, 0x96, 0x63, 0xb8, 0xf1, 0x58, 0x8e, 0x21,
0x4a, 0x2d, 0x3d, 0xb3, 0x24, 0xa3, 0x34, 0x49, 0x2f, 0x39, 0x3f, 0x57, 0x1f, 0x16, 0x2a, 0x60,
0x4a, 0xb7, 0x38, 0x25, 0x1b, 0x11, 0x40, 0x49, 0x6c, 0x60, 0x0f, 0x1b, 0x03, 0x02, 0x00, 0x00,
0xff, 0xff, 0x31, 0xf6, 0x77, 0xe8, 0x3b, 0x01, 0x00, 0x00,
}
func (m *BIP44Params) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *BIP44Params) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *BIP44Params) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
if m.AddressIndex != 0 {
i = encodeVarintHd(dAtA, i, uint64(m.AddressIndex))
i--
dAtA[i] = 0x28
}
if m.Change {
i--
if m.Change {
dAtA[i] = 1
} else {
dAtA[i] = 0
}
i--
dAtA[i] = 0x20
}
if m.Account != 0 {
i = encodeVarintHd(dAtA, i, uint64(m.Account))
i--
dAtA[i] = 0x18
}
if m.CoinType != 0 {
i = encodeVarintHd(dAtA, i, uint64(m.CoinType))
i--
dAtA[i] = 0x10
}
if m.Purpose != 0 {
i = encodeVarintHd(dAtA, i, uint64(m.Purpose))
i--
dAtA[i] = 0x8
}
return len(dAtA) - i, nil
}
func encodeVarintHd(dAtA []byte, offset int, v uint64) int {
offset -= sovHd(v)
base := offset
for v >= 1<<7 {
dAtA[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
dAtA[offset] = uint8(v)
return base
}
func (m *BIP44Params) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
if m.Purpose != 0 {
n += 1 + sovHd(uint64(m.Purpose))
}
if m.CoinType != 0 {
n += 1 + sovHd(uint64(m.CoinType))
}
if m.Account != 0 {
n += 1 + sovHd(uint64(m.Account))
}
if m.Change {
n += 2
}
if m.AddressIndex != 0 {
n += 1 + sovHd(uint64(m.AddressIndex))
}
return n
}
func sovHd(x uint64) (n int) {
return (math_bits.Len64(x|1) + 6) / 7
}
func sozHd(x uint64) (n int) {
return sovHd(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *BIP44Params) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowHd
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: BIP44Params: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: BIP44Params: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Purpose", wireType)
}
m.Purpose = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowHd
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
m.Purpose |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
case 2:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field CoinType", wireType)
}
m.CoinType = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowHd
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
m.CoinType |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
case 3:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType)
}
m.Account = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowHd
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
m.Account |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
case 4:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Change", wireType)
}
var v int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowHd
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
v |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
m.Change = bool(v != 0)
case 5:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field AddressIndex", wireType)
}
m.AddressIndex = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowHd
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
m.AddressIndex |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
default:
iNdEx = preIndex
skippy, err := skipHd(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthHd
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipHd(dAtA []byte) (n int, err error) {
l := len(dAtA)
iNdEx := 0
depth := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowHd
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowHd
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if dAtA[iNdEx-1] < 0x80 {
break
}
}
case 1:
iNdEx += 8
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowHd
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if length < 0 {
return 0, ErrInvalidLengthHd
}
iNdEx += length
case 3:
depth++
case 4:
if depth == 0 {
return 0, ErrUnexpectedEndOfGroupHd
}
depth--
case 5:
iNdEx += 4
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
if iNdEx < 0 {
return 0, ErrInvalidLengthHd
}
if depth == 0 {
return iNdEx, nil
}
}
return 0, io.ErrUnexpectedEOF
}
var (
ErrInvalidLengthHd = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowHd = fmt.Errorf("proto: integer overflow")
ErrUnexpectedEndOfGroupHd = fmt.Errorf("proto: unexpected end of group")
)