3720
Python yazılım grubu. Burada amaç birbirimize destek olmak ve kendimizi geliştirmektir. Hepiniz davetlisiniz. Kurallar ve diğer gruplar: @programlama Python Kaynak Kanalı: t.me/joinchat/RUhg4mlnThDP_3yZ
Sunucusu kapatı hosting firiması gerekçe kurallarımıza uymuyor
Читать полностью…
Lisanslama açısından python kodu nuitka ile so biçimine derlenip modül olarak başka bir launcherdan çağrılıp çalıştırılması mantıklı mı sizce?
Читать полностью…
Sorduğun soru veya açtığın konu bu grubun konusuyla alakalı olmadığı için, konuyu burada kapatıp Genel Sohbet Grubuna taşıman gerekiyor.
Читать полностью…
Yöneticilere ZeroArmy [8341132049] bildirildi.
Yeni federasyon engellemesi
Federasyon:@programlama
Federasyon yöneticisi:Sezer Bozkır
Kullanıcı:Hakan - TB1HEX
Kullanıcı Numarası:632866260
Sebep:bot
Termux kullanıcıları için ipucu:
HTTPS ve HTTP header bilgilerini hızlı kontrol etmek çok işe yarıyor.
Bunu otomatik yapan küçük bir scriptim var.
DM atarsanız detayları paylaşabilirim.
Selennur, 1/3 kere uyarıldı; dikkatli ol lütfen!
Sebep:
kuralları okuyun.
gerek bile yok kodu b64 ile zip içine sıkıştırsam yine yer serveri
Читать полностью…
Yani test.py ile main.py main testi çağıracak
Читать полностью…
onu shared object binarye çevirip b64 ile koda gömüp zip ile bellekte çalıştirabilirsiniz örnek kod var
#become whateverЧитать полностью…
import os, shutil, base64, zipfile, subprocess, hmac, hashlib, secrets, time; exec('p_k = secrets.token_bytes(32)\ndef paketle():\n f = input("Dosya: ").strip()\n if not os.path.isfile(f): exit("yok")\n n = os.path.splitext(os.path.basename(f))[0]\n b = ".tmp_" + secrets.token_hex(2)\n os.makedirs(b, exist_ok=True)\n with open(f, "r", encoding="utf-8") as s: src = s.read().replace("selfay.console.print", "self.ui.console.print")\n with open(os.path.join(b, n + ".py"), "w", encoding="utf-8") as s: s.write(src)\n with open(os.path.join(b, "setup.py"), "w") as s: s.write(f"from setuptools import setup\\nfrom Cython.Build import cythonize\\nsetup(ext_modules=cythonize(\'{n}.py\', language_level=3))")\n old = os.getcwd(); os.chdir(b)\n try: subprocess.run(["python3", "setup.py", "build_ext", "--inplace"], check=True, capture_output=True)\n except: exit("fail")\n os.chdir(old); so = next((i for i in os.listdir(b) if i.startswith(n) and i.endswith(".so")), None)\n if not so: exit("so_yok")\n z = "z.zip"\n with zipfile.ZipFile(z, "w") as zf: zf.write(os.path.join(b, so), arcname=so)\n with open(z, "rb") as d: raw = d.read()\n sig = hmac.new(p_k, raw, hashlib.sha3_512).hexdigest(); x_k = secrets.token_bytes(16); xor_r = bytes([raw[i] ^ x_k[i % len(x_k)] for i in range(len(raw))]); enc = base64.a85encode(xor_r).decode(); k_h = "".join([f"\\\\x{x:02x}" for x in p_k]); x_h = "".join([f"\\\\x{x:02x}" for x in x_k])\n with open(f"{n}_locked.py", "w") as out: out.write(f\'import base64, zipfile, tempfile, os, sys, importlib.util, shutil, random, string, hmac, hashlib, time, secrets\\nKahinX = r"""{enc}"""\\n_i = "{sig}"\\n_k = b"{k_h}"\\n_x = b"{x_h}"\\ndef _savunma():\\n if sys.gettrace() is not None: sys.exit(1)\\n if hasattr(sys, \\\'settrace\\\') and type(sys.settrace).__name__ != \\\'builtin_function_or_method\\\': sys.exit(1)\\n try:\\n with open(\\\'/proc/self/status\\\') as f:\\n for l in f:\\n if l.startswith(\\\'TracerPid:\\\') and int(l.split(\\\':\\\')[1].strip()) != 0: sys.exit(1)\\n except: pass\\n if any(x in os.environ for x in [\\\'PYTHONDEBUG\\\',\\\'PYTHONINSPECT\\\',\\\'PYTHONBREAKPOINT\\\',\\\'PYCHARM_HOSTED\\\',\\\'VSCODE_PID\\\',\\\'DEBUGPY_RUNNING\\\']): sys.exit(1)\\n t = time.perf_counter(); sum(i*i for i in range(10000))\\n if time.perf_counter() - t > 0.1: sys.exit(1)\\ndef _temizle(p):\\n try:\\n if os.path.isfile(p):\\n s = os.path.getsize(p)\\n with open(p, \\\'r+b\\\') as f:\\n for _ in range(2): f.seek(0); f.write(secrets.token_bytes(s)); f.flush(); os.fsync(f.fileno())\\n os.remove(p)\\n except: pass\\ndef _baslat():\\n _savunma()\\n try:\\n d_xor = base64.a85decode(KahinX); d = bytes([d_xor[i] ^ _x[i % len(_x)] for i in range(len(d_xor))])\\n if hmac.new(_k, d, hashlib.sha3_512).hexdigest() != _i: sys.exit("kurcalama_pic")\\n tmp_dir = os.path.join(tempfile.gettempdir(), \\\'\\\'.join(random.choices(string.ascii_lowercase, k=8)))\\n os.makedirs(tmp_dir, exist_ok=True); p = os.path.join(tmp_dir, "blob")\\n with open(p, "wb") as f: f.write(d)\\n with zipfile.ZipFile(p) as zf: zf.extractall(tmp_dir)\\n s_file = next(i for i in os.listdir(tmp_dir) if i.endswith(".so"))\\n m_n = s_file.split(".cpython")[0]; sys.path.insert(0, tmp_dir)\\n spec = importlib.util.spec_from_file_location(m_n, os.path.join(tmp_dir, s_file))\\n m = importlib.util.module_from_spec(spec); spec.loader.exec_module(m)\\n getattr(m, "main", getattr(m, "run", lambda: None))(); _temizle(p); shutil.rmtree(tmp_dir, ignore_errors=True)\\n except: sys.exit(1)\\nif __name__ == "__main__": _baslat()\')\n shutil.rmtree(b); os.remove(z); print(f"{n}_locked.py")\npaketle()')
Nuitka mantıjlı ama pyarmor daha iyi diye düşünüyorum runtime içinde gizleme yapıyor
Читать полностью…
Lisanslamadan kastım kodları açabilecek revers engineering yapacak bilgisi varsa açıp oluyabilir önemli değil fakat bilgisi olmayan birinin kodlarıma kendi adını yazması hoşuma gitmez
Читать полностью…
Adli bilişim grubunda sormak daha mantıklı bunu
Читать полностью…
Uyarı hakkı durumu 3/3; ZeroArmy 3 gün süresince geçici olarak susturuldu!
Sebep:
1: reklam yasaktır, kuralları okuyun.
2: yasal ve eğitim amaçlı olabilir ancak reklam almıyoruz
3: sizi bu konuda tekrar uyarmayacağım. Bu gruplarda hiçbir şartta, illegal alışveriş, paylaşım, satış, ticaret yapılmamaktadır.
ZeroArmy, 2/3 kere uyarıldı; dikkatli ol lütfen!
Sebep:
yasal ve eğitim amaçlı olabilir ancak reklam almıyoruz
ZeroArmy, 1/3 kere uyarıldı; dikkatli ol lütfen!
Sebep:
reklam yasaktır, kuralları okuyun.
Almak İsteyen Arkadaşlar Bana Yazabilirsiniz.
Читать полностью…
kolay gelsin euler projectin 45.sorusu için aşağıdaki kodu yazdım:
https://pastebin.com/apKnqyqu
soruda üçgensel beşgensel ve altıgensel sayıların formülü veriliyor ve hem üçgensel hem beşgensel hemde altıgensel olan sayıyı bulmamaızı isteniyor örnek olarak 40755 verilmiş bundan sonra gelen hepsinde bulunan sayıyı soruyor. bunu yukardaki kod ile kümeleri ve hazır gelen kesisim metodunu kullanarak çözdm ve baya kısa sürdü. ancak eger pythonda kumeler için hazır kesisim metodu olmasaydı nasıl yapabilirdim bilemedim. önce tüm kümleri for döngüleri ile iç içe döndürüp kesişim varmı diye bakıp eğer yoksa daha fazla sayı üretip tekrardan for lar ile denemeyi denedim ancak bu sekilde dogal olarak gitgide yavasladı ve kodumdaki tur metriği ile 5 dk beklediğimde ancak 12. tura gelebilmişti ben ise kesisim ile yaptıgımda dogru cevabı 554. turda buldum yani for lar ile kesişim olup olmadıgını kontrol etmek aşırı verimsiz. baska bir yöntem gelmedi aklıma, bu soru kesisim dısında nasıl çözülebilir fikri olan varmı