Merhaba Bir yazılımınız var ve sadece belli sayıda kişilere verdiniz. Fakat bu yazılımın sadece sizin kurmuş olduğunuz bilgisayarlarda çalışıyor olduğunu, bir nevi yazılımınızın başkaları tarafından kullanılmıyor olduğunu nasıl kontrol ederdiniz. Not: Bilgisayarlar çevirimiçi / Kullanıcılar düşük seviye kullanıcı / Yapmış olduğunuz yazılım C# & MSSQL destekli. Fikri olan yazabilir mi? Benim de bir fikrim var ancak çok mu uç düşünüyorum bilemedim. Biraz beyin fırtınası olsun. Bende birkaç şey yazacağım bir vakit sonra..

süpersiniz arkadaşlar. cevap mesajları ufkumu açtı.

Hdd id İlk cevap gayet güzell.. bende Mac düşünmüştüm. peki veri kontrolünü nasıl post ettirmeli... eposta & web service vs...

sLeymN bunu yazdı ben şyle bir şey yaptım bir uygulamamda, hdd id + mac adresi + kurulum tarihini hashleyen bir algoritmam var. bunu tersine çzüp bu bilgileri elde edebiliyorum geri. Uygulama kurulumdan sonra ilk açılışta dbdeki lisans alanını kontrol ediyor. eğer boş ise bir web service ile bana lisans requesti atıyor. dolu ise de valid bir lisans mı diye kontrol ediyor. web service ise bana sms atıyor. Bende bir exe üzerinden lisans üretip tabloya giriyorum. Uygulama tekrar açıldığında lisanslamış oluyor Abi biraz alakasiz bir detay ama hash zaten geri cevrilmesi istenmedigi durumlarda kullanilmiyor mu? I Ih. şyle düşün; Giri ABCDE olsun, hash'lediğin algoritman da her harfi alfabedeki bir sonraki harfle değiştirsin ve sonuç olarak BCDEF verecektir, bylece herkes sonucu grür ama sadece elinde algoritma olanlar asıl girinin ABCDE olduğunu bilebilir. Çok sıkılıyom

ben şyle bir şey yaptım bir uygulamamda, hdd id + mac adresi + kurulum tarihini hashleyen bir algoritmam var. bunu tersine çzüp bu bilgileri elde edebiliyorum geri. Uygulama kurulumdan sonra ilk açılışta dbdeki lisans alanını kontrol ediyor. eğer boş ise bir web service ile bana lisans requesti atıyor. dolu ise de valid bir lisans mı diye kontrol ediyor. web service ise bana sms atıyor. Bende bir exe üzerinden lisans üretip tabloya giriyorum. Uygulama tekrar açıldığında lisanslamış oluyor Abi biraz alakasiz bir detay ama hash zaten geri cevrilmesi istenmedigi durumlarda kullanilmiyor mu?

ben şyle bir şey yaptım bir uygulamamda, hdd id + mac adresi + kurulum tarihini hashleyen bir algoritmam var. bunu tersine çzüp bu bilgileri elde edebiliyorum geri. Uygulama kurulumdan sonra ilk açılışta dbdeki lisans alanını kontrol ediyor. eğer boş ise bir web service ile bana lisans requesti atıyor. dolu ise de valid bir lisans mı diye kontrol ediyor. web service ise bana sms atıyor. Bende bir exe üzerinden lisans üretip tabloya giriyorum. Uygulama tekrar açıldığında lisanslamış oluyor Cehennemin dibine kadar yolum var daha.. || Nasılsa her yalnız kendine sürgündür Asmera unutma.

whopper bunu yazdı sLeymN bunu yazdı ben şyle bir şey yaptım bir uygulamamda, hdd id + mac adresi + kurulum tarihini hashleyen bir algoritmam var. bunu tersine çzüp bu bilgileri elde edebiliyorum geri. Uygulama kurulumdan sonra ilk açılışta dbdeki lisans alanını kontrol ediyor. eğer boş ise bir web service ile bana lisans requesti atıyor. dolu ise de valid bir lisans mı diye kontrol ediyor. web service ise bana sms atıyor. Bende bir exe üzerinden lisans üretip tabloya giriyorum. Uygulama tekrar açıldığında lisanslamış oluyor Abi biraz alakasiz bir detay ama hash zaten geri cevrilmesi istenmedigi durumlarda kullanilmiyor mu? I Ih. şyle düşün; Giri ABCDE olsun, hash'lediğin algoritman da her harfi alfabedeki bir sonraki harfle değiştirsin ve sonuç olarak BCDEF verecektir, bylece herkes sonucu grür ama sadece elinde algoritma olanlar asıl girinin ABCDE olduğunu bilebilir. yanlışın var, dediğin şey encryption algoritması oluyor hocam. hashing daha çok veriyi zetlemek ve benzersize yakın bir sonuç üretmekle ilgili. geri dnüştürülememesi de veri kaybından kaynaklanıyor. verdiğin rnekten gidecek olursak, bir hashing algoritması şuna benzer şekilde işler; Alfabenin harflerini 0dan başlayarak indexlersek; (A=0, B=1, C=2, D=3, E=4, F=5, ...) ve girilen verinin bu index toplamlarını alıp(11) mod3 sonucunu alırsak(2), kendimizce veriyi hash'lemiş oluyoruz. farkedeceğin üzere birden fazla girdi aynı çıktıyı verebilir bu algoritma ile. bu yüzden de algoritmayı biliyor olsan da geri çeviremezsin, deneme yanılmayla da sonsuz bir sonuç kümesi var. Neyse konuya dnersek, cihaza zel id üretmek için şu fonksiyonu kullanabilirsin; public static string GetUDID { string drive = string. Empty; //Find first drive foreach (DriveInfo compDrive in DriveInfo. GetDrives { if } if (drive. EndsWith string volumeSerial = getVolumeSerial ; string cpuID = getCPUID ; //Mix them up and remove some useless 0's return sha256String(cpuID. Substring(13) + cpuID. Substring(1, 4) + volumeSerial + cpuID. Substring(4, 4)); } private static string getVolumeSerial private static string getCPUID { string cpuInfo = ""; ManagementClass managClass = new ManagementClass("win32_processor"); ManagementObjectCollection managCollec = managClass. GetInstances ; foreach { if } return cpuInfo; } Sadece paranoyaklar hayatta kalır...

sLeymN bunu yazdı ben şyle bir şey yaptım bir uygulamamda, hdd id + mac adresi + kurulum tarihini hashleyen bir algoritmam var. bunu tersine çzüp bu bilgileri elde edebiliyorum geri. Uygulama kurulumdan sonra ilk açılışta dbdeki lisans alanını kontrol ediyor. eğer boş ise bir web service ile bana lisans requesti atıyor. dolu ise de valid bir lisans mı diye kontrol ediyor. web service ise bana sms atıyor. Bende bir exe üzerinden lisans üretip tabloya giriyorum. Uygulama tekrar açıldığında lisanslamış oluyor Abi biraz alakasiz bir detay ama hash zaten geri cevrilmesi istenmedigi durumlarda kullanilmiyor mu? Hocam soyle dusun bir sistem kurdun a kisisi hile yapmis onunda hashi 3veb3i olsun sen bu hashli kisiyi hile yaptigini yakaladin kim oldugunu nerden bileceksin hash i geri cevirmen lazim ki mesela isminin a oldugu ortaya ciksin 2 li algoritmada guzel hash olusuyor A=2 B=4 C=8 D=16 Tarzinda sonsuza kadar 2 nin kati seklinde gidiyor mesela kisinin adi DCA olsun 16+8+2=26 rakamini uretti birde bunun siralamasini kuracak algoritma kur suan elinde 26 var hangilerinin toplami A C D nin peki bunun dogru kombinasyonu icinde algoritma lazim onuda uret 26 ile birlestir alsana hash Konuya gelirsek hocam ben Mac korumasi koyuyorum genelde programlarima basit son kullanici oldugu icin giris paneli oluyor giris panelinde kullanici adi sifre ile eslesmis durumda Mac oluyor o hesaba baska pc den baglanilamiyor sen Maci guzel sifrelersen her program acilisinda kontrol etsin o kullanici adi sifrenin sahibi o pc degilse girmesin Bot ve lisans ihtiyaçlarınız için pm atınız.

Tersine Mühendislik olayı çok gelişti her türlü patlatıyorlar nerdeyse, o sebeple sylenenlerin yanı sıra, server client mantığı olması daha güvenli olacaktır. Arayan yok, Soranı skim.