Wie kann ich Verschlüsseln von Video in Echtzeit?
Ich bin auf der Suche nach einem, vorzugsweise open-source-Bibliothek oder ein Programm zum verschlüsseln von video in Echtzeit für Sicherheit Zwecke, nicht mit DRM. Ich habe festgestellt, mehrere gute algorithmen, RVEA und VEA, aber bevor ich versuche hacken zusammen eine Implementierung, die ich wollte, um zu sehen, wenn man bereits existierte oder ob es einen besseren Weg, dies zu tun, da diese Methoden sind ein wenig alt.
- Interessante Frage. Einen Grund kann man nicht dienen, es über HTTPS?
- Sie können jede stream-cypher?
- HTTPS hat ein paar Nachteile. Die Verschlüsselung erfolgt bei der portion eher als im Voraus gespeichert, so dass Sie brauchen mehr CPU auf dem Rand, als Sie sonst wäre. Auch da ist es wieder verschlüsselt per-user ist es nicht zwischengespeichert werden (im CDN, an den ISP, und im browser).
- Ry4an: Fair genug. Aber wie du tust, zu planen für die Entschlüsselung dann? Oder haben Sie eine benutzerdefinierte client-Seite-player? Wenn es custom-client-Seite, scheint Sie konnten verschlüsseln mit, was Sie wollen.
- Netter Versuch 😉 news.cnet.com/8301-1009_3-10417247-83.html
- ja, es sei denn, Sie sind passend zu den IETF-Entwurf, zu dem ich einen link in meine Antwort genau (in dem Fall gibt es ein paar Kunden, werden bereits für das entschlüsseln), benötigen Sie ein software auf der client-Seite. Es muss nicht sein das Spieler aber, ein HTTP-proxy könnte es tun. Ich war herauszufinden, dass Colin war mit dem schreiben neuer client-software, aber wenn er ' s nicht, er ist beschränkt auf die craptacular DRM-system gebaut, in welchem player er nimmt.
- Tatsächlich, streaming wäre wahrscheinlich der leichtere Teil. Was ich Suche ist eine Möglichkeit zum speichern von Videos von einer Kamera in einem verschlüsselten format, wie es die Aufnahme. Die Idee hinter RVEA, ist die Verwendung eines beliebigen Verschlüsselungs-Algorithmus zu Steuern, nur dann, wenn unterzeichnet bits in einem video sind vertauscht. Ändern Sie nur diejenigen, die unterzeichnet bit ist genug, um es sehr schwierig zu sagen, was Los ist in dem video, und es ist sehr preiswert. Ich wollte nur wissen, ob es einen besseren Weg oder eine aktuelle Umsetzung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde vorschlagen, verwendet AES-128 gezählt block (nicht die üblichen verketteten block) Modus. Es ist leicht getan, die openssl verwenden, und es ist verfügbar im hardware, auf die alle mobile und CE-Geräte, so werden auch diese Optionen sollte Sie hatte, die Weg in die Zukunft.
Einem Ort, den es benutzt, ist in der aufgeteilte HTTP-streaming von apple-pro-diese Skillung: http://tools.ietf.org/html/draft-pantos-http-live-streaming-02
Sind Sie ein wenig vage auf die Anforderungen, aber wenn Sie einfach nur auf der Suche für eine sehr schnelle Methode der Verschlüsselung eines Datenstroms, dann RC4 ist immer noch kein schlechter Weg zu gehen. Es ist extrem schnell, ich denke, es wird schneller sein als eine glaubwürdige block-Chiffre. Und Sie können einen beliebig langen Schlüssel.
Scheint es ziemlich viel Gerede über die RC4 als "alt" und müssen ersetzt werden, aber ich glaube nicht, dass es veröffentlichte, bricht es. Natürlich, wenn ich den bad guy, brach es, ich würde wahrscheinlich halten, dass wenig Informationen in der Nähe meiner Brust, und verwenden Sie es für ein bisschen old-fashioned diebisch. Also, wer wirklich weiß. Das primäre Problem, dass ich denke veröffentlicht wird ist, dass Sie Zyklus der s-box für eine gewisse Anzahl von Iterationen, bevor Sie mit der keystream. Eine pdf-Beschreibung, die statistische Schwäche ist verfügbar hier.
Und dieser Algorithmus ist verfügbar in OpenSSL, die auch Ihren Anforderungen entspricht. Ich kann ehrlich nicht sagen, wie dies bezieht sich auf RVEA; ich weiß nichts über Sie. Eine sehr kurze google-Suche auftaucht, meist trifft erfordern logins um mehr darüber zu erfahren. Obwohl, ein undurchsichtiges Referenz schien zu implizieren, dass RVEA kann eine beliebige Anzahl von Ziffern. Vielleicht unterstützt es bereits RC4.