What is the callbackextension for register string?

what is a callback extension? From the sample sip.conf:

;----------------------------------------- OUTBOUND SIP REGISTRATIONS ------------------------
; Asterisk can register as a SIP user agent to a SIP proxy (provider)
; Format for the register statement is:
; register => [peer?][transport://]user[@domain][:secret[:authuser]]@host[:port][/extension][~expiry]
; domain is either
; - domain in DNS
; - host name in DNS
; - the name of a peer defined below or in realtime
; The domain is where you register your username, so your SIP uri you are registering to
; is username@domain
; If no extension is given, the ‘s’ extension is used. The extension needs to
; be defined in extensions.conf to be able to accept calls from this SIP proxy
; (provider).
; A similar effect can be achieved by adding a “callbackextension” option in a peer section.
; this is equivalent to having the following line in the general section:
; register => username:secret@host/callbackextension
; and more readable because you don’t have to write the parameters in two places
; (note that the “port” is ignored - this is a bug that should be fixed).
; Note that a register= line doesn’t mean that we will match the incoming call in any
; other way than described above. If you want to control where the call enters your
; dialplan, which context, you want to define a peer with the hostname of the provider’s
; server. If the provider has multiple servers to place calls to your system, you need
; a peer for each server.

in concrete terms, what’s difference in effect between a register string in [general] or [peer] section?

Callbackextension just adds simplicity and convenience.
All the settings are now in one place - in the peer definition.
No need to specify host twice. No need to specify username twice.
No need to specify your password (secret) again.
No need to expose your password in a clear text - now you can use md5secret for both calls and registration.

This works fine with UDP transport.
For TCP and TLS transport this either does not work at all or nobody wants to open a secret :wink:
My question without answer: TCP/TLS register with md5secret