Rechtliches - Fingerprint-Funktionen in DLL auslagern

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7039
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Rechtliches - Fingerprint-Funktionen in DLL auslagern

Beitrag von STARGÅTE »

Tachchen,

ich bin mir gerade etwas unsicher, ob es (von seiten der PureBasic Lizenz) erlaubt ist, für eine selbst geschriebene Anwendung DLLs bereit zu stellen, welche verschiedene Fingerprints berechnen können, die halt teilweise auf Grundlage von PB erstellt wurden:
Die PureBasic Lizenz verbietet ausdrücklich die Erstellung von DLL's, deren Hauptfunktion es ist, als ein 'Wrapper' für PureBasic-Funktionen zu dienen.
Der Grund dafür ist der, dass ich dem späteren Nutzer der Anwendung ermöglichen möchte, eigene FingerPrints in Form von DLLs hinzuzufügen.
Ist es nun aber schon ein Verstoß gegen die PB-Lizenz, wenn ich zu meiner Anwendung DLLs für MD5, CRC32 und SHA1 beilege?
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
WPö
Moderator
Beiträge: 669
Registriert: 27.05.2008 12:44
Wohnort: Oberland
Kontaktdaten:

Re: Rechtliches - Fingerprint-Funktionen in DLL auslagern

Beitrag von WPö »

Moin, Sterngatter!

Wenn Du eine PB-eigene Funktion per DLL in anderen Programmen aufrufen könntest, stellte das einen Lizenzbruch bezüglich PB dar. Ganz anders verhält es sich bei Deinem Anliegen. Du willst ja nur externe Funktionen in Purebasic verwenden (lassen).

Was da an Daten hinten 'rausfällt, interessiert lizenztechnisch gesehen niemanden. Die einzige Hürde bei Deiner Anwendung ist, darauf zu achten, keine Lizenzen externer Systeme zu verletzen. Sichere Dich also ab, daß sowohl die verwendeten Kryptographieverfahren selbst wie auch deren technische Umsetzung als DLL frei von Rechten sind.

Gruß - WPö
Ich glaube nur der Statistik, die ich selbst gefälscht habe!
Meine Netzpräsenz: WPö.de
PB5.31 auf LMDE und Pentium T7200 2,00GHz, 4GB DDR2, ATI X1400.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7039
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Rechtliches - Fingerprint-Funktionen in DLL auslagern

Beitrag von STARGÅTE »

WPö hat geschrieben:Wenn Du eine PB-eigene Funktion per DLL in anderen Programmen aufrufen könntest, stellte das einen Lizenzbruch bezüglich PB dar. Ganz anders verhält es sich bei Deinem Anliegen. Du willst ja nur externe Funktionen in Purebasic verwenden (lassen).
Aber theoretisch könnte ja nun jemand die MD5.DLL nehmen und un einem andere Programm aufrufen, deswegen beunruhigt mich das.
Klar, ich könnte einfach selber den MD5-Algo schreiben und als DLL bereit stellen.
Oder aber, ich lasse die PB-Funktionen intern, allerdings sind dann updates etwas mühsammer.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Rechtliches - Fingerprint-Funktionen in DLL auslagern

Beitrag von ts-soft »

Füge doch einfach der DLL-Funktion ein Password hinzu, was Du als Hash überprüfst, bevor die DLL ein Ergebnis zurückgibt.
Ohne Password ist die DLL dann nutzlos und Du auf der sicheren Seite.

Beispiel:

Code: Alles auswählen

; password = "purebasic"
ProcedureDLL MD5(FileName.s, *buffer, password.s)
  Protected result.s
  If MD5Fingerprint(@password, Len(password)) = PeekS(?password, 32)
    result = MD5FileFingerprint(FileName)
    PokeS(*buffer, result, 32)
  EndIf
EndProcedure

DataSection
  password:
  Data.s "9b459388e4628f1b18045bafff08ea5c"
EndDataSection

Define *buffer = AllocateMemory(32)
MD5("d:\popc0rn.xm", *buffer, "purebasic")
Debug PeekS(*buffer)
Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7039
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Rechtliches - Fingerprint-Funktionen in DLL auslagern

Beitrag von STARGÅTE »

Gut, aber das heißt ja trotzdem nicht, dass es von mir Legal wäre, diesen Weg einzuschalgen.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Rechtliches - Fingerprint-Funktionen in DLL auslagern

Beitrag von ts-soft »

Warum? Du lieferst ja keinen simplen Wrapper zu einer PB Funktion, so das dieser von anderen Programmiersprachen
genutzt werden kann. Darum geht es ja. Die DLLs sind ohne Password, bzw. dem Programm, das dieses kennt,
nutzlos (ausser für wahre Cracker :mrgreen: , aber die haben andere Möglichkeiten).
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten