| 336 | //--------------------------------------------------------------------- |
| 337 | |
| 338 | Address::Address (std::string_view b32): |
| 339 | addressType (eAddressInvalid) |
| 340 | { |
| 341 | if (b32.length () <= B33_ADDRESS_THRESHOLD) |
| 342 | { |
| 343 | if (identHash.FromBase32 (b32) > 0) |
| 344 | addressType = eAddressIndentHash; |
| 345 | } |
| 346 | else |
| 347 | { |
| 348 | blindedPublicKey = std::make_shared<i2p::data::BlindedPublicKey>(b32); |
| 349 | if (blindedPublicKey->IsValid ()) |
| 350 | addressType = eAddressBlindedPublicKey; |
| 351 | } |
| 352 | } |
| 353 | |
| 354 | Address::Address (const i2p::data::IdentHash& hash) |
| 355 | { |