Batyr Berdiýew

Batyr Ataýewiç Berdiýew (Russian: Батыр Бердиев, Batyr Berdiyev, born October 3, 1960) is a former politician in Turkmenistan, specializing in the country's foreign relations. During the course of his career, he was an ambassador and a foreign minister.

Batyr Ataýewiç Berdiýew
Foreign Minister of Turkmenistan
In office
July 28, 2000  July 7, 2001
Preceded byBoris Şyhmyradow
Succeeded byRaşit Meredow
Turkmenistan Ambassador
to Austria, Slovakia, the Czech Republic,
and the OSCE
In office
1994–2000
Turkmenistan Deputy Foreign Minister
In office
1992–1994
Personal details
Born (1960-10-03) October 3, 1960
Ashkhabad, Turkmen SSR, Soviet Union

Political career

From 1990 to 1991, he was a correspondent for the Soyuz and Zhizn newspapers, which are publications of Turkmenistan's Foreign Affairs ministry. From 1992 to 1994, he served as deputy foreign minister.[1] From 1994 to 2000, Batyr Berdiýew was the ambassador of Turkmenistan to Austria, the Czech Republic, Slovakia, and the Organization for Security and Co-operation in Europe. From July 28, 2000 to July 7, 2001, Berdiýew served as foreign minister of Turkmenistan, but was dismissed for alcoholism,[2] poor knowledge of the native language Turkmen, a weakness for women, and failure to understand the problems of the Caspian and Aral Seas and Afghanistan. Later, he was replaced by Raşit Meredow at the request of President of Turkmenistan Saparmurat Niyazov.[3]

On December 8, 2002, he was arrested for having a connection with an assassination attempt on President Niyazov. In January 2003, he was convicted of involvement in the assassination attempt and received a sentence of 25-year imprisonment.[4] Opposition members of the assassination reported that Berdiýew was either seriously ill or dead.[5] Nothing has been confirmed, and his death is now regarded as a rumor. In a publication by the Open Society Institute, Berdiýew is listed as an alleged victim of a human rights violation in Turkmenistan by being allegedly tortured while in custody.[6]

On September 19 of the same year, Berdiýew was given the Sakharov Prize for his efforts to bring democracy, freedom of the press, and the rule of law to his country. The same award was also given to three other Central Asian political prisoners: Mukhammed Bekjanov of Uzbekistan, Felix Kulov of Kyrgyzstan, and Ghalymzhan Zhaqiyanov of Kazakhstan.

Following Niyazov's death, his successor, Gurbanguly Berdimuhamedow, was asked about the fates of Berdiýew and alleged co-conspirator Boris Şyhmyradow at a visit to Columbia University in September 2007. Berdimuhamedow said that he thought they were still alive.[7]

Timeline

  • 1990 to 1991 - Correspondent for Soyuz and Zhizn, publications of Foreign Affairs Ministry
  • 1992 to 1994 - Deputy foreign minister
  • 1994 to 2000 - Ambassador to Austria, Slovakia, the Czech Republic, and the Organization for Security and Co-operation in Europe
  • 2000 to 2001 - Foreign minister
gollark: > `import hashlib`Hashlib is still important!> `for entry, ubq323 in {**globals(), **__builtins__, **sys.__dict__, **locals(), CONSTANT: Entry()}.items():`Iterate over a bunch of things. I think only the builtins and globals are actually used.The stuff under here using `blake2s` stuff is actually written to be ridiculously unportable, to hinder analysis. This caused issues when trying to run it, so I had to hackily patch in the `/local` thing a few minutes before the deadline.> `for PyObject in gc.get_objects():`When I found out that you could iterate over all objects ever, this had to be incorporated somehow. This actually just looks for some random `os` function, and when it finds it loads the obfuscated code.> `F, G, H, I = typing(lookup[7]), typing(lookup[8]), __import__("functools"), lambda h, i, *a: F(G(h, i))`This is just a convoluted way to define `enumerate(range))` in one nice function.> `print(len(lookup), lookup[3], typing(lookup[3])) #`This is what actually loads the obfuscated stuff. I think.> `class int(typing(lookup[0])):`Here we subclass `complex`. `complex` is used for 2D coordinates within the thing, so I added some helper methods, such as `__iter__`, allowing unpacking of complex numbers into real and imaginary parts, `abs`, which generates a complex number a+ai, and `ℝ`, which provvides the floored real parts of two things.> `class Mаtrix:`This is where the magic happens. It actually uses unicode homoglyphs again, for purposes.> `self = typing("dab7d4733079c8be454e64192ce9d20a91571da25fc443249fc0be859b227e5d")`> `rows = gc`I forgot what exactly the `typing` call is looking up, but these aren't used for anything but making the fake type annotations work.> `def __init__(rows: self, self: rows):`This slightly nonidiomatic function simply initializes the matrix's internals from the 2D array used for inputs.> `if 1 > (typing(lookup[1]) in dir(self)):`A convoluted way to get whether something has `__iter__` or not.
gollark: If you guess randomly the chance of getting none right is 35%ish.
gollark: Anyway, going through #12 in order:> `import math, collections, random, gc, hashlib, sys, hashlib, smtplib, importlib, os.path, itertools, hashlib`> `import hashlib`We need some libraries to work with. Hashlib is very important, so to be sure we have hashlib we make sure to keep importing it.> `ℤ = int`> `ℝ = float`> `Row = "__iter__"`Create some aliases for int and float to make it mildly more obfuscated. `Row` is not used directly in anywhere significant.> `lookup = [...]`These are a bunch of hashes used to look up globals/objects. Some of them are not actually used. There is deliberately a comma missing, because of weird python string concattey things.```pythondef aes256(x, X): import hashlib A = bytearray() for Α, Ҙ in zip(x, hashlib.shake_128(X).digest(x.__len__())): A.append(Α ^ Ҙ) import zlib, marshal, hashlib exec(marshal.loads(zlib.decompress(A)))```Obviously, this is not actual AES-256. It is abusing SHAKE-128's variable length digests to implement what is almost certainly an awful stream cipher. The arbitrary-length hash of our key, X, is XORed with the data. Finally, the result of this is decompressed, loaded (as a marshalled function, which is extremely unportable bytecode I believe), and executed. This is only used to load one piece of obfuscated code, which I may explain later.> `class Entry(ℝ):`This is also only used once, in `typing` below. Its `__init__` function implements Rule 110 in a weird and vaguely golfy way involving some sets and bit manipulation. It inherits from float, but I don't think this does much.> `#raise SystemExit(0)`I did this while debugging the rule 110 but I thought it would be fun to leave it in.> `def typing(CONSTANT: __import__("urllib3")):`This is an obfuscated way to look up objects and load our obfuscated code.> `return getattr(Entry, CONSTANT)`I had significant performance problems, so this incorporates a cache. This was cooler™️ than dicts.
gollark: The tiebreaker algorithm is vulnerable to any attack against Boris Johnson's Twitter account.
gollark: I can't actually shut them down, as they run on arbitrary google services.

References

  1. "BERDIYEV, Batyr Atayevich". Turkmenistan Votes 2004. Radio Free Europe/Radio Liberty. Archived from the original on 16 March 2007. Retrieved 2007-03-21.
  2. "Turkmen President Fires Foreign Minister for Drunkenness". People's Daily Online. People's Daily Online. 2001-07-01. Retrieved 2007-03-22.
  3. "July 2001". Rulers. Retrieved 2007-03-21.
  4. "Index Be-Bh". Rulers. Archived from the original on 2 March 2007. Retrieved 2007-03-21.
  5. Brown, Bess (2007). "Turkmenistan". Britannica Book of the Year, 2004. Encyclopædia Britannica Online. Retrieved 2007-03-21.
  6. Turkmenistan Project, division of Central Eurasia Project, project of Open Society Institute (2003-01-24). "Human Rights Violations in Turkmenistan" (PDF). Open Society Institute. Archived from the original (PDF) on 2007-07-13. Retrieved 2007-03-22.
  7. "Turkmenistan: Jailed opposition leaders Boris Shihmuradov and Batyr Berduyev are alive" Archived 2008-06-05 at the Wayback Machine, Vremya Novostei (ferghana.ru), September 26, 2007.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.