Having tools that cater for everyone, is most important… and SAFE is one step ahead of the unsafe internet already.
IDN and international urls
There is an accepted standard for urls, to allow use of international character sets.
Internationalized Domain Names (IDNA), sees urls transformed to form xn–blah and back again. So, browsers can choose to display the international url or the xn-- and look to the xn-- address in both cases. This get round one of the problems with how the old internet was established as latin centric.
So, for example, on the unsafe internet, президент.рф
works as xn--d1abbgf6aiiy.xn--p1ai
Enter SAFE
- SAFE network appears to handle international characters (I’ve not tested but expect it’s just bytes and not character sets)
- SAFE Browser appears to just accept those more exotic characters as url!.. but does understand to translate to
xn--
Question then: is IDN a legacy that we do not need - or is it so widely used that it is needed to assist domain owners move to SAFE?
=============
So, “test this”…
testthis
测试这个
kiểmtra
מבחןזה
проверитьэто
A simple hello world index.html
safe files put ./test/ --recursive
and create domains on the back of that with
safe nrs create testthis --link safe://hnyynywou5hf1dhw61jdsmc7ryoud65yeinn68sdgbojpzg97668p5877ebnc?v=0
safe nrs create 测试这个 --link safe://hnyynywou5hf1dhw61jdsmc7ryoud65yeinn68sdgbojpzg97668p5877ebnc?v=0
safe nrs create kiểmtra --link safe://hnyynywou5hf1dhw61jdsmc7ryoud65yeinn68sdgbojpzg97668p5877ebnc?v=0
safe nrs create מבחןזה --link safe://hnyynywou5hf1dhw61jdsmc7ryoud65yeinn68sdgbojpzg97668p5877ebnc?v=0
safe nrs create проверитьэто --link safe://hnyynywou5hf1dhw61jdsmc7ryoud65yeinn68sdgbojpzg97668p5877ebnc?v=0
sees option on these
safe://testthis
safe://测试这个
safe://kiểmtra
safe://מבחןזה
safe://проверитьэто
the result of which is
safe://testthis -> works
safe://测试这个 -> safe://xn--ciqt27ee4ursd stops because null at that address
safe://kiểmtra -> safe://xn--kimtra-qj8b stops because null at that address
safe://מבחןזה -> safe://xn--5dbgfd7ai stops because null at that address
safe://проверитьэто -> safe://xn--b1agjvdbhdta3im stops because null at that address (atm)
but just by example, this is fixable, if the xn address is also registered.
safe nrs create xn--b1agjvdbhdta3im --link safe://hnyynywou5hf1dhw61jdsmc7ryoud65yeinn68sdgbojpzg97668p5877ebnc?v=0
now works fine.
To remove IDN from the browser or not?
There is option then to consider xn-- legacy, in a world that the browser can handle international character sets directly… because the safe network handles those. That alternate would need a fix to the browser to remove the bounce onto xn–.
I wonder that we leave this as it is, noting the oddity that you need to also register the xn address.
to note
if you want to play with idn on linux install idn
sudo apt-get install idn
then you can move through idn with for example conversion and unconversion as:
echo "президент.рф" | idn | idn -u