Questions about asset descriptions


#1

Hi

I have two questions about asset descriptions

  1. What is the maximum length of an asset’s description?

  2. Who has permissions to change the asset’s description?

I couldn’t find either of these answers in the docco or Google.

Cheers


#2

I’ll add the first to the FAQs, for some reason people can’t find it although it’s documented. - it’s 52 bytes.

The description requires the same access as other asset operations - only the person who owns (for an asset that hasn’t been transferred after the creation, the issuer is the owner) the token can change things like Locked/Unlocked, Description, and Quantity (if not Locked).


#3

Many thanks for the reply.

So to clarify, if 1 unit of an asset is transferred is the recipient (who now owns 1 unit of the asset) able to change the description?

Thanks


#4

No, that’s why I tried to clarify:

  • Owner = asset (token) issuer or the last person the asset ownership was transferred to
  • Asset holder = someone who has any amount of the asset at one of addresses he or she controls

If you issue a token, you can sell it (to another would be holder, kind of “stakeholder”), but you can also transfer ownership (like selling your company title, here you’d sell “asset title”).

In Counterwallet you can transfer ownership in Address Actions (same place where you do Issuance).


#5

Understood thanks for the fast reply.

You said descriptions are max 52 bytes. I am trying to set an assets description to “IAuMhZFOELiEfdbNPG5/jOyc+fPn58iqJkNH7BOxbXKQHuQbSBsF3e” which https://mothereff.in/byte-counter says is 52 bytes.

But I’m getting “Undefined error”. If I reduce the string to 41 characters (41 bytes says https://mothereff.in/byte-counter) it works. Any more and “Undefined error”.

What am I doing wrong?

Thanks again


#6

The supposed 52 byte string is 54 bytes when I try it.

You can try to find other asset descriptions from other users (use CoinDaddy’s explorer or other way). Scroll through several pages, find the longest one and see how long it is, then use the same length.

Maybe it’s a Counterwallet issue. You could use another wallet to test (Freewallet or Indiesquare, perhaps) to see if the same string works there. If it doesn’t, then it’s not a Counterparty problem.
It looks longer than 52 bytes.


#7

Hi

Again thanks for the reply. You are right that string I pasted is 54 characters / bytes - it was late. I have tested again and the maximum length description string it supports is definitely 41 characters / bytes.

Thanks for your suggestions - I have found this asset with a description which appears to be 58 characters / bytes: https://whois.coindaddy.io/xcp/asset/WINTERTALES

This is longer than the specification allows?..

Thanks for your other suggestions - is it possible to use test-net with Freewallet or Indiesquare (and if so how?) so I can find the longest asset description length these services provide?


#8

I have verified production is the same as test-net - max length that doesn’t result in “undefined error” is 41 characters in the asset description field.

Should I raise a bug?


#9

I just used Counterwallet and it works fine.

##52-byte Description

New description: 0123456789012345678901234567890123456789012345678912

##Change

##Notification

##Block Explorer Record
https://testnet.counterpartychain.io/asset/BUYSELL


#10

Many thanks. I think the bug only occurs for numeric name tokens not custom named tokens!

Do you agree?


#11

No.

https://testnet.counterpartychain.io/asset/A11762216033364916000


#12

Any idea why I always get errors?

Thanks


#13

EDIT: Ignore this post. See replies below.

I checked 46,000 assets from a one year old list (https://raw.githubusercontent.com/Jpja/CounterTools/master/settings/asset_list.txt)

Length #assets
0 30623 1 30 2 29 3 89 4 479 5 537 ... 37 96 38 99 39 97 40 365 41 304 42 1 43 6 44 6 45 7 46 7 47 0 48 0 49 0 50 44 51 0 52 0 53 0

What the list tells is that most asset descriptions are up to 41 characters. A few are up to 50 but none are longer.

BUT examining the 50 char descriptions further, these are actually not the descriptions. They have shorter url’s pointing to a .json file, which in turn have a longer description.

The longest “real” descriptions I found were 46 chars.

Very likely the max description length is set at 41 in Counterwallet while the max allowed length in the Counterparty protocol is 46.


#14

But my assets above have 52 char descriptions and the source code and the CP protocol specification both allow that.
Admittedly this is on testnet but I am not going to spend real BTC to prove I am right.

If somebody shares the client error log or where in the code or CP protocol spec it says otherwise, I’ll take another look.

Nobody uses very long “real” descriptions because if the asset is any good or has a good name, long description is not really needed.

Edit 1) JP I updated my descriptions from Counterwalllet, the screenshots show that.

Edit 2) WINTERTALES - who the hell knows, maybe there was a bug before v9.55 that allowed these to sneak in.


#15

I opened the DB in SQLiteStudio

The longest description is 252 chars !?!


#16

Hi JPJA

Thanks for your advice and testing.

Yesterday I tested on production not testnet and found that I got “unspecified” error unless the numerical named asset ID had a description 41 characters or less - the same results as on testnet for me at least!

http://blockscan.com/address/1VVBJh2ERSC7vbTsGdGEpMx1gyuFKN16j

It also cost me 0.00032076BTC which is more than I was expecting as I read the docco and I thought it said “fee 5430 satoshis (0.05USD) and 0.0001 BTC tx fee (0.1USD)” ?

(there is no way to lower that cost and still guarantee miners accept it right?)

Many thanks


#17

Thanks for testing.

Using https://testnet.counterwallet.io

I still get the error “Error making request to undefined: Unknown Error.” when I try your string

0123456789012345678901234567890123456789012345678912

What is going on?


#18

They say the limit isn’t enforced on the protocol level (but as far as I can tell, that’s also not true - https://github.com/CounterpartyXCP/counterparty-lib/commit/3127aa844fbc6110a55dccb723ed664191fa7088).
I do know that it is enforced in the CLI because I tested this few weeks back.

Here it says from August 2014 and on Testnet, there’s no 41 char limit.

Well, I just changed description on mainnet, for a “paid” (letters-only) asset, to 52 characters.
It worked fine so as far as I am concerned there’s no issue - Counterwallet allows 52 characters for both mainnet and testnet (and maybe more is possible).

If anyone has a problem they should try a different client (Indiesquare Wallet?) or another browser or the CLI.

It also cost me 0.00032076BTC which is more than I was expecting as I read the docco and I thought it said “fee 5430 satoshis (0.05USD) and 0.0001 BTC tx fee (0.1USD)” ?

The minimum transaction fee, yes. But it can be, and usually is, higher. And if you operate from a multisig address, you can pay triple as much.


#19

Thanks.

Did you manage to raise a bug? Any work around for me?

Thanks


#20

I’ve no plans to raise any bugs, as I said this is working fine for me on both mainnet and testnet and with both alphanumeric and textual assets and there’s no bug report from anyone.

Any work around for me?

Stated above: “If anyone has a problem they should try a different client (Indiesquare Wallet?) or another browser or the CLI.”