flashover
Goto Top

Sourcecode von ElectronJS Anwendung schützen

Hallo.

Ich möchte gerne wieder eine kommerzielle Anwendung entwickeln lassen, wofür ich i.d.R. die Basis vorgebe.
Der grafische Part könnte super mit ElectronJS und JavaScript gebaut werden und das Meiste davon wäre sogar für geringe Lizenzkosten verfügbar, so daß man das Rad nicht neu erfinden müsste und relativ schnell eine funktionierende Anwendung bauen könnte, welche auf allen Plattformen läuft. So weit so gut. Die Kommunikation mit PouchDB ist auch kein Thema.

Da ich aber eine kommerzielles Produkt mit Service etc. aufbauen möchte, ist mir daran gelegen die Quellendes effektiv zu schützen. Ich hatte daher schon überlegt vielleicht lieber eine Lösung auf Basis von QT entwickeln zu lassen. Ich möchte aber ungern C++ oder Python nutzten lassen und für Go stecken die Bindings noch in den Kinderschuhen. Im Backend wird NodeJS oder Go laufen. Abhängig davon ob Kunden die Möglichkeiten bekommen, den Service auch intern zu betreiben (Business Anwendung). Dann wäre Node als offener Code natürlich wieder nachteilig und Go finde ich sehr attraktiv und nat. performant.

Mich würde interessieren, wie man in der Praxis kommerziellen Code in einer Electron App schützten sollte. Obfuscation scheint mir hier die gängigste Möglichkeit aber bin nicht überzeugt von der Effektivität (mir ist klar daß es Reverse Engineering für alles gibt, der Aufwand sollte aber schon hoch sein daß zu tun).
Was setzen die Profis so ein um Ihre großen kommerziellen Apps vor manipulation und Kopie zu schützen? Wird hier evtl. ein duales Prinzip genutzt und ein Teil in z.B. Go/C#/C++ entwickelt und nur die GUI bleibt Javascript so daß man einen Teil als kompilierten Code in der App hat und die GUI "nur" durch obfuscation geschützt ist? Zwei Sprachen macht es natürlich für die Entwickler auch nicht gerade einfach (Vorteil von JavaScript)

Freue mich auf eure Erfahrungen.

Content-Key: 395961

Url: https://administrator.de/contentid/395961

Printed on: April 19, 2024 at 04:04 o'clock

Member: falscher-sperrstatus
falscher-sperrstatus Dec 17, 2018 at 20:05:07 (UTC)
Goto Top
Hallo,

die Frage kam hier schonmal, das Ende vom Lied war, dass du dich dafür an die Profis wenden musst, denn ein Kopierschutz bringt nichts, wenn er stümperhaft umgesetzt wird. Ist dann aber auch nicht mehr ganz billig.

VG
Member: FlashOver
FlashOver Dec 17, 2018 at 22:24:35 (UTC)
Goto Top
Die Frage ist ja eher, wer die Profis sind. Für so ne Lösung die Hand und Fuß hat paar große Scheine auszugeben ist ja nicht das Problem, aber die Lösung zu finden ist es scheinbar. Bin davon ausgegangen daß es für Node etwas ähnliches wie den IonCube loader für PHP gibt, also eine kommerzielle Lösung die mit asynchroner Verschlüsselung etc. das Ganze entsprechend kompliziert macht zu entschlüsseln. Der Key zum Entschlüsseln muß dann halt trotzdem irgendwo mitgegeben werden da man nicht davon ausgehen kann daß die Software immer online ist und einen Hardware Dongle kann man den Usern schließlich ich nicht antun face-smile

Wenn jemand ne kommerzielle Lösung bzw. Anbieter kennt, freue ich mich über eine Wink mit dem Zaunpfahl. Alternativ gern auch ne ausgereifte UI Library für GO.
Member: falscher-sperrstatus
falscher-sperrstatus Dec 17, 2018 at 22:28:44 (UTC)
Goto Top
IonCube wird beispielsweise mWn mehr und mehr abgesägt. Aufwand steht nicht im Verhältnis.

Ich denke, das wird auch nicht so public gemacht, um nicht direkt jeden Cracker auf die Firma zu stoßen.
Member: ASP.NET.Core
ASP.NET.Core Dec 18, 2018 updated at 13:13:04 (UTC)
Goto Top
Derart proprietäre Software ist in meinen Augen weder zeitgemäß noch sinnvoll. Warum die Anwendung nicht einfach Open Source stellen und mit Service/Hosting Geld verdienen? Das ist zeitgemäßer und funktioniert bei anderen nicht erst seit gestern. RHEL/CentOS ist ein bekanntes Beispiel. Das Kernprodukt kann von jedem völlig kostenfrei genutzt werden. Für Unternehmen die unbedingt Support wollen gibts dann die RHEL-Lizenzen.

Vorteile:
  • Du verschwendest weder Zeit noch Geld mit Obfuscating & co
  • Ist das Projekt erfolgreich, profitierst du kostenfrei von Beiträgen der Open Source Gemeinschaft
  • Verbreitung/PR
  • Auch Privatpersonen und sehr kleine Unternehmer können die Software ohne Geldprobleme nutzen

Du hast zwar nicht geschrieben worum es genau geht. Aber ich würde den Open Source Ansatz mal überdenken/prüfen und mich anders herum fragen, welcher Grund denn überhaupt dafür spricht, noch proprietär zu entwickeln. So lange im Quellcode nicht gerade die geheime Formel wie man Eisen in Gold umwandeln kann enthalten ist, dürfte das ja nicht all zu viel sein.
Member: FlashOver
FlashOver Dec 22, 2018 at 09:15:39 (UTC)
Goto Top
Hallo zusammen.
Den Open Source Gedanken hatte ich natürlich schon. Selbst spende ich auch gerne immer wieder für Open source Projekte welche ich gerne nutze und froh bin dass es diese gibt (KeePass, Debian, Alpine Linux, etc.). Den Vorteil, daß die Community sogar zur Verbesserung des Produktes beiträgt ist natürlich auch positiv zu bewerten. Jetzt aber das ABER.

1. Wenn ich für die Anwendung ca. 100K als Privatmann für Entwickler, Marketing etc. pp ausgebe, tue ich mir schwer mit dem Gedanken, daß vielleicht ein Unternehmen einen Service Vertrag möchte.
2. Wenn Front- und Backend Open Source sind, könnte ja jede Firma die mehr Kohle hat als ich den Service anbieten und somit ist meine Investition im Schornstein (weiß nicht ob ich das mit einer Lizenz schützen könnte. Aber dagegen müsste man auch erstmal klagen bei Verstößen... das kann man sich kaum leisten finanziell)
3. Der Trend ist aktuell in der Tat daß man eine Anwendung hat und diese das Backend als Service braucht. Machen ja Trollo, Slack, Evernote etc auch so. Aber genau das war für mich ein Grund das lieber selber zu machen. Ich will wissen wo meine Daten sind und daher dem Kunden auch die Möglichkeit geben, das Backend selber intern zu betreiben.

Generell ist es aber so, daß ich natürlich nichts entwickeln lasse, was man nicht binnen ein paar Monaten reproduzieren könnte mit dem notwendigen Elan und Zeit. Dennoch muß ich erstmal hinsichtlich Zeit und Finanzen so viel investieren, daß ich damit schon Bauchschmerzen hätte, wenn ich von Tag 1 alles open source zur Verfügung stelle. Man kann sich ja einfach ausrechnen was - sagen wir mal 2 - Entwickler plus Büro, Infrastruktur etc, plus Marketing etc. kosten werden.

Wenn jemand lesenswerte Informationen oder Bücher kennt, wie man ein Projekt oder Unternehmen mit Open Source Gedanken aufzieht und damit auch noch Geld (wir reden hier von Kostendeckung und nicht Reichtum) verdienen kann, bin ich sehr interessiert.

Konkret habe ich drei Projekte/Produkte im Kopf wo ich auch weiß daß der Markt danach verlangt. Vielleicht sollte ich mal kucken ob eine Kickstarter Projekt vielleicht die Lösung wäre für die Startfinanzierung so daß ich nicht alles finanziell selber stemmen müsste....
Member: FlashOver
FlashOver Dec 22, 2018 at 09:20:17 (UTC)
Goto Top
Vielleicht noch ein Nachtrag.

Wer mir sagen kann welche Projektbörse bei Programmierern beliebt ist bekommt ein Sternchen an der Wand face-smile
Möchte wie gesagt ja Entwickler als Freiberufler oder in Festanstellung (muss ich mal rechnen) beschäftigen. Und das Arbeitsamt ist sicherlich nicht in der Lage die Leute mit den richtigen Skills zu finden. Ich kenn primär Gulp und Hays aber ob sich dort auch Entwickler herumtreiben weiß ich nicht.