Jag har tidigare i VB6 skrivet en rutin för att validera en kombination av användarnamn och licensnyckel. I princip fungerar den så att namnet + information om version av programmet läggs ihop i en sträng, sedan hashas denna. Resultatet av hash-funktionen blir licensnyckeln. Bristen är att jag inte kan få fram information om vilken version nyckeln är giltig för, utan jag får testa alla olika och det är lite jobbigt. Dessutom kan jag inte lagra datum med denna metoden om jag t.ex. vill ha med information i nyckeln om hur länge användarens underhållsavtal gäller (för att förhindra installation av versioner släppta efter underhållsavtalets utgång). Jag gjorde nåt liknande (sökte lite men hitade inget bra) dv jag gjorde en egen licensnyckel som bestod av en mängd komponenter. Det jag gjorde vara att jag bestmde mig för vilka komponenter jag vill ha med, t.ex version och datum sen skrev jag mappningsalgoritmer för version och datum (som var reverserbara) sen paddade jag med en massa random så att det såg ut typ Det låter vettigt. Om jag sedan vill låsa det till ett visst namn är det ju bara att lägga till en hash av namnet i nyckeln. Det finns en licenseprovider som kan användas i net. Sök på LicFileLicenseProvider klassen i hjälpen. LicFileLicenseProvider är väl bara för att förhindra användning av en olicenscierad applikation/kontroll? Min fråga gäller hur man skapar och tolkar själva nyckeln. www.samlogic.com har sin licensprogramvara RegGuard. Den har jag testat. Vet inte om det är det du vill ha, men det skadar inte att testa...Hantering av licensnycklar
Hur löser jag detta med .NET? Finns det färdiga komponenter att köpa? Förslag? Eller bygger jag lättast denna funktionalitet själv? Någon som har förslag på hur?
Jag är inte ute efter någon supersäker lösning, men det är ju alltid bättre ju säkrare det är.
/JohanSv: Hantering av licensnycklar
r=random
x=version
c= kontroll
rrry-yyyrr-rmmrr-rrddr-rrxrxr-rrcrr
så jag rknar fram alla grejer jag behöver, genererar mina radnoms och sedan räknade jag ut en kontrollsiffra och stoppade in den... Visst, det är ju lite bökigt men det funkar... om man dessutom gör att t.ex. ett datum kan generera flera olika koder så är det ju rätt svårt att knäcka koden...Sv: Hantering av licensnycklar
/JohanSv: Hantering av licensnycklar
När det gäller denna teknik så tror jag du måste köpa ett certifikat först från exempelvis Verisign som du sedan kan använda dig av. Tyvärr har jag inte läst så mycket om det än, bara skummat så jag kan inte ge dig ett 100%:igt svar.
Ta och läs igenom http://www.developer.com/net/csharp/article.php/3074001 och se om det ger något.Sv: Hantering av licensnycklar
/JohanSv: Hantering av licensnycklar
/micke