LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam

Mega.co è un cloud storage che offre ai suoi utenti 50 GB di spazio di archiviazione gratuito. Un'offerta del genere sembra allettante, non è vero?

Per molti, un aumento così significativo del disco rigido non farà male. Tutti i dati ospitati nel cloud storage Mega.co sono crittografati.

Dopo che il più grande servizio di condivisione file Megaupload è stato chiuso per decisione delle autorità statunitensi nel 2012, il suo fondatore Kim Dotcom ha lanciato un nuovo servizio cloud per l'archiviazione di file su Internet.

Il fondatore di Megaupload è fuggito dall'accusa delle forze dell'ordine statunitensi in Nuova Zelanda. Esattamente un anno dopo la chiusura del popolare servizio di file sharing, utilizzato da oltre 160 milioni di utenti da tutto il mondo, è stato lanciato un nuovo progetto: il cloud file storage Mega.

Ora su Internet è possibile trovare alcuni di questi archivi di file, ad esempio altri.

La principale differenza tra il cloud storage Mega.co e risorse simili è che al momento, il cloud storage offre 50 GB di spazio su disco gratuiti agli utenti registrati per archiviare i propri file. Mega co nz non ha limiti alle dimensioni dei file caricati nella memoria.

Il nome del servizio MEGA sta per "MEGA Encrypted Global Access" (MEGA Encrypted Global Access).

L'archiviazione su cloud consente di caricare file sul server, archiviarli lì e anche scambiare file con altri utenti. Durante il processo di download, i file vengono crittografati nel browser utilizzando l'algoritmo AES, che li protegge da accessi non autorizzati.

Fisicamente, i file vengono archiviati nel cloud storage in forma crittografata, l'amministrazione del servizio cloud non ha accesso ad essi.

Il servizio di condivisione file Mega supporta molte lingue, incluso il russo. Per iniziare a utilizzare l'archivio cloud, dovrai registrarti.

Mega.co.nz

Registrazione in Mega.co

Dopo essere entrati nel sito https://mega.co.nz/ tramite una connessione sicura, nella pagina principale del servizio sul pannello superiore, è necessario selezionare il russo per ulteriori informazioni comodo utilizzo Conservazione.

Quindi è necessario fare clic sul pulsante "Registrati" nel pannello superiore della finestra del servizio. Negli appositi campi, dovresti inserire i tuoi dati (non necessariamente reali, qualche login andrà bene), inserire l'indirizzo del tuo e-mail (reale), quindi scegli una password per accedere all'archivio file nel cloud.

Dopo aver spuntato la casella di fronte alla voce dedicata al consenso alla fornitura dei servizi di questo servizio, sarà necessario cliccare sul pulsante "Registrati" per completare la procedura di registrazione nel cloud storage Mega co.

Dopodiché, dovrai inserire il tuo indirizzo email specificato durante la registrazione, aprire una lettera da Tim MEGA. e quindi seguire il collegamento per completare il processo di registrazione del negozio. Sarà necessario inserire i dati specificati durante la registrazione e accedere all'archivio file su cloud.

Come usare Mega.co

Dopo aver avviato la memorizzazione, la finestra del menu "File Manager" si apre davanti a te. In alto c'è la barra dei menu, e sotto c'è l'area per lavorare con cartelle e file scaricati. A destra c'è la colonna per la gestione e la visualizzazione della struttura di archiviazione.

Utenti del browser Mozilla Firefox si propone di installare l'add-on MEGA EXTENSION. Senza installare componenti aggiuntivi, gli sviluppatori consigliano di utilizzare il browser Google Chrome. Dal momento che il mio file main browser Firefoxquindi ho installato l'estensione consigliata per il mio browser.

La differenza nell'utilizzo del servizio nel browser Google Chrome è che, a differenza di altri browser, utilizzando Google Chrome, è possibile caricare non solo file, ma intere cartelle sul cloud storage Mega.co.

Ecco come appare il pannello di controllo del repository in browser Mozilla Firefox. Il pannello contiene il pulsante "Nuovo download". Il pulsante "Nuovo download" viene utilizzato per caricare i file nell'archivio cloud.

Nel browser Google Chrome, il pannello contiene due pulsanti "Carica file" e "Carica cartella". Utilizzando il pulsante "Carica file", puoi caricare un file nell'archivio cloud dal tuo computer. Dopo aver fatto clic sul pulsante "Carica cartella", si apre una finestra di Explorer, in cui è necessario selezionare una cartella per caricarla nell'archivio file.

Per aggirare questo problema, gli utenti di altri browser possono creare una cartella in Mega con lo stesso identico nome della cartella sul computer che deve essere caricata nel repository. Quindi è necessario aprire la cartella sul computer e caricare il suo contenuto nella cartella appena creata nell'archivio file. Pertanto, la cartella desiderata verrà caricata completamente in Mega.

Nella barra dei menu "Il mio account" puoi vedere il tuo stato, la quantità di spazio di archiviazione utilizzato e anche configurare il trasferimento dei dati.

Qui puoi modificare la quantità connessioni parallele download e il numero di connessioni per il download parallelo. Se ne hai bisogno, puoi inserire un limite alla velocità di download.

Dopo aver fatto clic sul pulsante del menu Iscrizione Pro, puoi scegliere un pacchetto a pagamento per archiviare più file da 500 GB a 4 TB.

Se fai clic sul pulsante del menu "Menu", puoi saperne di più sulle regole per l'utilizzo del cloud storage Mega.co.

Puoi creare nuova cartella, se fai clic sul pulsante "Nuova cartella". Nella cartella appena creata, puoi caricare file e creare altre nuove cartelle in questa cartella. Dopo aver cliccato sulla cartella con il tasto destro del mouse, nel menu contestuale è possibile selezionare i comandi appropriati per ulteriori azioni con la cartella.

Per caricare file nell'archivio file Mega.co, fare clic sul pulsante Carica file nel browser Google Chrome e fare clic sul pulsante Nuovo caricamento in altri browser. Nella finestra Esplora che si apre, seleziona uno o più file contemporaneamente da caricare nell'archivio cloud.

La velocità di download dei file è illimitata, se non l'hai limitata nelle impostazioni del servizio, e dipende dalla velocità della connessione Internet del tuo computer. È possibile spostare i file caricati nell'archivio cloud, rinominare, condividere, collegare, copiare o eliminare.

Puoi guardare il processo di caricamento e download dei file nella parte inferiore della finestra del servizio.

Lavorare con i file in MEGA avviene tramite l'interfaccia web. I client per computer e altri dispositivi non sono ancora stati rilasciati.

Condivisione di cartelle su Mega.co

Le cartelle archiviate nel servizio cloud Mega nz possono essere condivise. Per fare ciò, fare clic sulla cartella con il tasto destro del mouse e, nel menu contestuale, fare clic sulla voce "Condiviso". Si aprirà la finestra Condivisione in cui puoi dare al nuovo utente il permesso di condividere questa cartella.

Dovrai inserire l'indirizzo email dell'utente e selezionare i diritti di condivisione per il nuovo utente sulla cartella ospitata nel tuo archivio cloud. È possibile concedere a un altro utente tali diritti: "Sola lettura", "Lettura e scrittura", "Controllo completo".

Sul indirizzo email l'utente riceverà un'e-mail con un collegamento che dovrà seguire per accedere alla cartella corrispondente situata nel cloud storage dei file Mega. Le cartelle condivise differiscono leggermente in aspetto dal resto delle cartelle di archiviazione cloud.

Come ottenere un collegamento in Mega. co

Per fornire ad altri utenti un collegamento per scaricare un file ospitato nell'archivio dati Mega cloud, fare clic con il tasto destro sul file e selezionare "Ottieni collegamento" dal menu contestuale.

In caso contrario, solo l'utente che ha ricevuto il collegamento al file e un codice di sicurezza speciale può scaricare il file crittografato. Senza un codice di sicurezza, sarà impossibile scaricare un file utilizzando un collegamento di questo tipo.

In questa immagine, sono attivati \u200b\u200bdue elementi "Collegamento al file" e "Chiave file". In questo caso, seguendo un collegamento di questo tipo, scarica questa vita qualsiasi utente su Internet che ha accesso a questo collegamento può.

L'utente può salvare il file nel proprio archivio Mega.co facendo clic sul pulsante "Importa". In questo caso, il file verrà importato da un archivio a un altro, senza scaricare il file sul computer. Sarà possibile importare file se l'utente dispone di una propria memoria sul servizio Mega.co.

Dopo aver cliccato sul link, in una nuova finestra l'utente dovrà inserire la chiave di sicurezza da te ricevuta per scaricare il file, oppure per salvarlo nel proprio archivio file. Dopo aver inserito la chiave, l'utente dovrà fare clic sul pulsante "Download" e attivare la voce "Accetto i termini dei servizi MEGA".

Per ottenere la chiave di sicurezza per il file scaricato, dopo aver copiato il collegamento al file, è necessario attivare il pulsante "Chiave file", gli altri pulsanti dovrebbero essere inattivi in \u200b\u200bquesto momento. Sarà necessario fornire la chiave del file a un altro utente insieme a un collegamento per scaricare il file.

Dopo aver cliccato sul link ricevuto da te, nella finestra del servizio cloud Mega.co, l'utente dovrà inserire la chiave di sicurezza ricevuta da te. Dopo aver inserito la chiave del file, dovrai accettare i termini di servizio di MEGA, quindi fare clic sul pulsante "Download".

Quando si fa clic sul pulsante "Importa file", verrà salvato nell'archivio cloud dell'utente se questo utente ha il proprio account nell'archivio cloud Mega co.

Successivamente, si aprirà la finestra "Download completato", in cui all'utente viene richiesto di salvare il file manualmente per completare il download. Per fare ciò, nella finestra "Download completato", fare clic sul pulsante "Salva file", e nella finestra Esplora che si apre, selezionare la posizione in cui salvare il file scaricato, assegnare un nome al file, quindi fare clic sul pulsante "Salva".

Dopodiché, il file verrà salvato sul tuo computer.

Altri elementi "Nome file" e "Dimensioni file" nella finestra "Collegamenti" per il download dei file non hanno particolare importanza e contengono informazioni di aiuto sul file scaricato.

A causa del fatto che i file inseriti nel servizio archiviazione cloud i dati sono crittografati, non sarai in grado di visualizzarli, riprodurli o ascoltarli mentre sono nel cloud storage. Per rimozione completa i file dal cloud storage dovranno svuotare il "Cestino".

Conclusioni dell'articolo

Il cloud storage Mega co ti consente di archiviare gratuitamente 50 GB di dati sui suoi server. I file vengono archiviati crittografati nel cloud storage e, cosa più importante, tutto questo spazio di archiviazione viene fornito gratuitamente.

Mega Cloud Storage - 50 GB di spazio di archiviazione gratuito (video)

Il servizio di archiviazione dati Mega co nz è stato lanciato nel 2013. Il primo giorno, il sito è stato visitato da 1 milione di utenti e nella prima ora sono stati registrati più di 100.000 utenti. Per il 2015, Mega archivia le informazioni su Internet per oltre 15 milioni di utenti.

Il servizio Mega cloud sta per "MEGA Encrypted Global Access". Quando si caricano i dati nella memoria, tutti i file vengono crittografati nel browser utilizzando l'algoritmo AES e vengono archiviati sul server in forma crittografata. Inoltre, Mega non memorizza password e. Sono di proprietà dell'utente e non possono essere ripristinati dall'azienda. Se hai dimenticato la password, l'unico modo per recuperarla è avere una chiave principale Mega nz.

Data warehouse mega co nz: fornisce spazio di archiviazione gratuito ea pagamento per i file su Internet. Ti consente di archiviare e accedere ai tuoi file ovunque nel mondo. Ha diversi modi per caricare i file nella memoria Mega.nz utilizzando un browser web o applicazioni client speciali.

È facile creare un account con Mega. È necessario fornire un indirizzo e-mail e una password per iniziare. La differenza tra l'archiviazione Mega.co e il fatto che in seguito riceverai 50 GB di spazio su disco per archiviare file su Internet gratuitamente e non è necessario inserire i dati della carta di credito durante la registrazione.

Il Mega co cloud è molto facile da navigare. I pulsanti per il download di file e cartelle si trovano nella barra dei menu in alto e sotto di essa i dati scaricati. A sinistra c'è la colonna di controllo e visualizzazione nel servizio Mega cloud. Cliccando sul pulsante del menu in alto a destra, puoi cambiare la lingua, installare l'applicazione Add-On su browser di Google Chrome, Mozilla Firefox, sincronizza tutte le cartelle su un computer che esegue un sistema operativo sistema Windows, Mac, Linux con cartelle nel Mega cloud, sincronizza e carica i tuoi dati sul cloud installando app mobile Android iOS Blackberry Windows su smartphone o tablet.


È molto facile archiviare e condividere file nel servizio cloud Mega.co.nz, creare una nuova cartella, caricare foto, video, documenti o altre informazioni facendo clic sul pulsante "Carica file" nella parte superiore del menu. Il data warehouse Mega.nz non utilizza i limiti della dimensione del file caricato e la velocità di download se non l'hai limitata nelle impostazioni.

Quando si fa clic con il pulsante destro del mouse su una cartella nel menu a discesa, è possibile aprire, ottenere un collegamento per scaricare un file da un servizio cloud, copiare, rinominare, spostare, eliminare i dati dal disco.

Mega.nz Data Warehouse offre tre piani a pagamento per l'archiviazione dei file sul cloud:

PRO Ⅰ 500 GB € 9,99 / mese O € 99,99 / anno
PRO Ⅱ 2 TB GB € 19,99 / mese O € 199,99 / anno
PRO Ⅲ 4 TB GB € 29,99 / mese O € 299,99 / anno
Quando acquisti il \u200b\u200bpiano PRO annuale, ricevi 2 mesi gratuiti.
Tutti possono utilizzare MEGA obloko gratuitamente.

Registrazione su Mega.co.nz

Mega | archiviazione cloud Mega | Cloud Mega | Memoria mega

Sono certo che tutti gli utenti Internet attivi abbiano sentito parlare della storia della chiusura del popolare file che ospita Megaupload e delle disavventure del suo creatore. E certamente sanno del nuovo progetto di Kim Dotcom chiamato Mega... Ti ricordiamo che questo servizio è la reincarnazione della precedente creazione di Kim, ma su una piattaforma completamente diversa.

Durante la creazione, sono stati presi in considerazione tutti i difetti e gli errori di Megaupload e l'enfasi è stata posta principalmente sulla stabilità del servizio di file hosting. E non solo ai carichi di rete, ma anche agli attacchi dei titolari di copyright. Per questo grande attenzione è riservata alla privacy e alla sicurezza dei tuoi dati. Tutti i file caricati da te sono crittografati con uno speciale algoritmo, quindi l'amministrazione del servizio non ha idea del contenuto dei tuoi account e, di conseguenza, non può essere ritenuta responsabile. Per lo stesso scopo, i server Mega si trovano in diversi paesi, quindi se ci sono problemi con le leggi in un paese, ciò non comporterà il collasso dell'intero servizio ei tuoi dati rimarranno intatti.

Oggi vogliamo farti conoscere il lavoro di questo servizio e offrirti una breve panoramica delle sue funzioni.

Per iniziare, devi registrarti. Per fare ciò, è necessario fornire il proprio nome, indirizzo postale e password. Il servizio è perfettamente russificato e ben progettato.

Una volta completata la registrazione, ti verrà inviato un link di accesso al tuo indirizzo email specificato. Cliccando sul link, dovrai attendere un paio di minuti fino a quando non verranno generate delle chiavi segrete speciali, con le quali i dati verranno crittografati.

Entriamo nel nostro cloud storage. Tutto è chiaro e semplice qui: a sinistra c'è un albero di cartelle, al centro c'è l'area di visualizzazione dei file e in alto c'è una barra degli strumenti. I file possono essere caricati facendo clic sul pulsante Nuovo caricamento o semplicemente trascinando e rilasciando nella finestra del servizio. I download sono estremamente veloci.

I file possono essere organizzati in cartelle. Lo spostamento dei file tra le cartelle viene eseguito trascinando e rilasciando o utilizzando menù contestuale (vedi sotto). Il livello di nidificazione delle directory non è limitato.

Un collegamento per scaricare il file viene generato nella finestra pop-up che appare.
Presta attenzione alle opzioni nella parte superiore di questa finestra. Se solo Collegamento al file, quindi il tuo destinatario non sarà in grado di scaricare il file senza inserire una password speciale, che puoi inviargli separatamente via e-mail. Ciò consente di pubblicare collegamenti per il download in luoghi pubblici, come un blog o un forum, ma consente il download solo a determinate persone.
Se contrassegnato ulteriormente Chiave file, quindi chiunque può scaricare il file utilizzando il collegamento creato. Caselle di controllo Nome e dimensione del file aggiungere le caratteristiche del file appropriate.

Il menu contestuale della cartella è leggermente diverso. C'è un oggetto qui Accesso condiviso... Con esso, puoi invitare i tuoi colleghi, amici o familiari a condividere. Gli inviti vengono inviati tramite e-mail e l'accesso può variare. Sola lettura - solo visualizzazione, Leggere scrivere - visualizzazione e caricamento dei file in una cartella, Accesso completo - visualizzazione, download ed eliminazione di file.

Nella sezione account puoi visualizzare la pienezza del tuo spazio di archiviazione, acquistare spazio aggiuntivo, modificare le impostazioni di trasferimento dei dati e alcune altre opzioni.

Alcune impressioni personali

Servizio di condivisione file Mega fa una mega impressione. Ottima velocità, interfaccia intuitiva e piacevole, 50 gigabyte di spazio su disco, nessuna restrizione sul traffico e sulla dimensione dei file caricati, più completa libertà e privacy dei tuoi dati. È solo una specie di vacanza!

Le capacità del servizio Mega possono essere utilizzate per diversi scopi. Prima di tutto, questa è la diffusione di vari tipi di informazioni, che delizieranno notevolmente i pirati di tutti i continenti. Tuttavia, la possibilità di un accesso limitato tramite password può essere utile per la vendita legale delle loro creazioni, ad esempio, da parte di musicisti. La condivisione delle cartelle rende Mega uno strumento interessante per organizzare il lavoro a distanza. E ovviamente banale backup informazioni importanti per te.

L'unica cosa che manca a Mega in questa fase è un client desktop e mobile per diversi sistemi operativi. Data la giovane età del servizio, si può sperare che gli sviluppatori semplicemente non abbiano ancora avuto il tempo e che un tale client apparirà presto. Dopodiché, non vedo ostacoli affinché Mega possa diventare il nuovo standard per l'archiviazione su cloud.

In questo articolo, continuerò a parlare di come lavorare con vari archivi online e prenderò in considerazione altri 3 buoni servizi: Cloud Mail, Mega e Microsoft OneDrive.

Di di questo manuale Imparerai come registrarti a ciascuno dei servizi di cui sopra, nonché come lavorare con loro attraverso l'interfaccia Web e un'applicazione speciale per i sistemi operativi (lo mostrerò usando Windows come esempio).

Ho parlato di lavorare con Yandex e le unità Google in un articolo precedente separato, poiché sono le più richieste e popolari.

Ciascuno dei 3 servizi di cui sopra fornisce il proprio determinato volume per l'archiviazione gratuita dei dati e ha anche le proprie regole per espandere il volume con mezzi a pagamento e gratuiti.

Puoi leggere queste informazioni generali e un confronto di tutti i dischi online più popolari in un articolo separato:

Cominciamo con il servizio Cloud @ Mail.

Registrazione nel servizio Cloud @ Mail

Il servizio Mail fornisce l'archiviazione remota dei dati con un volume gratuito di 100 GB.

Consideriamo passo dopo passo come registrare e collegare il tuo account e ottenere 100 GB contemporaneamente.

    Vai alla pagina del servizio Cloud @ Mail utilizzando il link:

    posta

    In fondo alla pagina che si apre, ci sarà grande pulsante Prova il cloud. Cliccalo:

    Apparirà un modulo di login. Se hai già un account su Mail.ru (ad esempio, e-mail), inserisci il tuo nome utente, la password e fai clic sul pulsante "Accedi", dopodiché ti troverai immediatamente nel tuo account di archiviazione remoto da Mail.

    Se non hai un account su Mail.ru, fai clic sul link "Registrati":

    Si aprirà una finestra con un modulo di registrazione. Compila tutti i campi con i tuoi dati: Nome, Cognome, Data di nascita, Città, Sesso.

    Nel campo "Casella di posta", specifica il login desiderato, che utilizzerai per accedere a tutti i servizi di posta in futuro. Per te, verrà automaticamente registrata anche la posta del seguente formato: "Il tuo [email protected]".

    Di seguito specifichiamo la password e la ripetiamo nella riga successiva. Prova a specificare la password più difficile per la tua sicurezza. In questo caso, Mail deve informare che la password è complessa.

    Successivamente, puoi specificare il tuo numero di telefono esistente e completare la registrazione, oppure puoi saltare l'inserimento del numero (questo può essere fatto in qualsiasi momento) e specificare invece domanda di Sicurezza... Per fare ciò, fai clic sul link "Non ho un telefono cellulare":

    Dopo aver fatto clic su questo collegamento, verranno visualizzati altri 3 elementi di seguito. È necessario compilare i primi 2: "Domanda segreta" e "Risposta". Nel primo, rispettivamente, scegli una domanda di sicurezza e sotto indichi la risposta ad essa. Questa risposta tornerà utile nel caso in cui dimentichi le informazioni di accesso al tuo account:

    Premiamo il pulsante "Registrati".

    Apparirà una finestra per l'inserimento del captcha. Basta specificare i simboli esattamente come nell'immagine a destra e fare clic su "Fine":

    A questo punto, la registrazione è già stata completata, ma verranno comunque visualizzate le finestre con le impostazioni. Ad esempio, nella finestra successiva, ti viene offerto di raccogliere tutta la tua posta da altre caselle di posta in una casella appena creata in Mail. Certo, se usi costantemente la posta creata da Mail, ha senso farlo, ma ora non stiamo parlando di lavorare con la posta e quindi premiamo il pulsante "Salta":

    In ogni caso, puoi impostare la raccolta della posta in qualsiasi momento attraverso le impostazioni del tuo account.

    Successivamente, apparirà una finestra delle impostazioni, dove ti viene offerto di mettere una firma, che verrà allegata a ogni lettera che invii da Mail e carica un avatar per il tuo account. Ciò non influisce sul servizio Cloud, che stiamo considerando, e quindi puoi farlo ora, o più tardi. Fare clic sul pulsante "Salva":

    Questa era l'ultima finestra delle impostazioni, dopo di che andrai al tuo account di posta e la posta verrà aperta per prima. Passiamo alla rassegna delle principali funzionalità quando si lavora con il servizio Cloud @ Mail tramite l'interfaccia Web.

Lavorare con il servizio "Cloud @ Mail" tramite l'interfaccia Web

Dopo aver registrato un account in Mail, verrai immediatamente connesso all'account creato. Da lì, puoi andare al servizio di archiviazione online facendo clic sul pulsante con l'immagine cloud nella parte superiore della finestra:

Si aprirà una finestra con un benvenuto dal servizio, in cui faremo semplicemente clic su "Avanti":

E nell'ultima finestra, accettiamo i termini del contratto di licenza spuntando la casella appropriata e facendo clic su "Inizia":

Passando alle possibilità di lavorare con un disco in linea da Mail tramite l'interfaccia Web

Dopo essere passati al servizio di archiviazione online da Mail, vedremo la seguente interfaccia:

Cominciamo a esaminare le funzioni utili passo dopo passo:


Su questo abbiamo analizzato tutte le funzioni più importanti per lavorare con il servizio Cloud @ Mail. Passiamo all'esame di come lavorare con il Cloud tramite un'applicazione molto comoda per il sistema operativo Windows.

Lavorare con il disco in linea Cloud @ Mail tramite l'applicazione Windows

Lavorare con qualsiasi disco online tramite un'applicazione per il tuo sistema è molto più conveniente e ti consente di utilizzare più funzionalità, ad esempio la possibilità di scaricare cartelle, non solo file.

Consideriamo tutto in più fasi.

Installazione dell'applicazione Cloud @ Mail sul tuo computer:

    Per prima cosa devi scaricare l'applicazione. Puoi farlo direttamente dalla finestra principale del tuo account facendo clic sul pulsante "Scarica applicazione per computer":

    Se ci sono richieste, posso anche dirti separatamente come lavorare con qualsiasi archiviazione online simile tramite smartphone / tablet, il che è anche molto conveniente!

    In una nuova finestra, ci viene chiesto di scegliere il sistema operativo per il quale verrà scaricata l'applicazione. Nei nostri esempi, finora stiamo considerando solo i sistemi Windows. Ma il principio di lavorare con un'applicazione su altri sistemi è completamente simile. Quindi, fai clic sul pulsante con l'immagine di Windows:

    Il file di installazione verrà scaricato sul tuo computer. Lo troviamo e lo eseguiamo:

    Nella prima finestra di installazione, seleziona la lingua e fai clic su "OK":

    Nella fase successiva, è possibile modificare il percorso di installazione facendo clic sul pulsante "Sfoglia", se necessario. Ma consiglio di lasciare il percorso predefinito.

    Ti verrà ora chiesto di cambiare la cartella nel menu Start. Non ha senso in questo, ma se vuoi cambiare, fai clic su "Sfoglia" e seleziona un'altra cartella.

    Nella penultima finestra di installazione, possiamo disabilitare avvio automatico applicazioni per avvio di Windows e disabilitare la creazione dell'icona sul desktop. Se creare o meno un collegamento sul desktop dipende da te e puoi crearlo in futuro in qualsiasi momento. Ma ti consiglio di non disabilitare mai la funzione di avvio insieme a Windows in modo che i tuoi file siano sempre sincronizzati con il tuo account e tu abbia sempre accesso a ultime versioni i file da qualsiasi dispositivo. In caso contrario, ti dimenticherai di avviare manualmente l'applicazione e, in questo caso, le modifiche ai file precedentemente scaricati non verranno più salvate sul server.

    Dopo aver scelto ciò di cui hai bisogno, fai clic su "Avanti":

    Bene, nell'ultima finestra, fai clic sul pulsante "Installa":

    L'installazione richiede solitamente alcuni secondi.

    Nell'ultima fase finale, fai clic su "Fine", lasciando selezionata la casella di controllo "Avvia Cloud Mail.ru", in modo che l'applicazione venga avviata immediatamente:

Tutti! L'applicazione è ora installata sul tuo computer. Andiamo a lavorarci sopra.

Lavorare con Cloud Mail tramite un'applicazione installata sul tuo computer:

    Il primo passo è accedere al tuo account. La finestra di autorizzazione verrà visualizzata immediatamente dopo l'installazione dell'applicazione.

    Inseriamo login e password per l'account in Mail (deve essere indicato nel formato della tua e-mail a Mail), lasciamo un segno di spunta "Accetto i termini del contratto di licenza" e clicca su "Accedi":

    Successivamente, verrà avviata l'applicazione. Apparirà nella barra delle applicazioni di Windows e riceverai una notifica:

    Accedi alla cartella del tuo account [email protected].

    Quindi, l'applicazione funziona. Per vedere i file che sono già stati caricati nel Cloud, aprire la cartella appositamente creata “Cloud Mail.ru”. Questo può essere fatto da un collegamento sul desktop:

    Puoi anche aprire sempre la cartella del disco facendo doppio clic sull'icona Cloud Mail nella barra delle applicazioni.

    Nella cartella vedrai già tutti i tuoi file precedentemente caricati tramite l'interfaccia Web, ad esempio:

    Il caricamento dei file sul Cloud utilizzando l'app è facile. Basta copiare nella cartella Cloud Mail.ru tutti i file e le cartelle che desideri caricare sul tuo disco online di Mail:

    Tieni presente che ora, utilizzando l'applicazione per computer, puoi scaricare intere cartelle oltre ai file!

    Per verificare se i file sono stati completamente scaricati sul disco, fare clic con il pulsante destro del mouse sull'icona dell'applicazione nella barra delle applicazioni:

    Se tutti i file vengono caricati, in alto dirà: "Sincronizzato", se il download è ancora in corso, verrà scritto "Sincronizzazione".

    Anche la rimozione dei file dalla memoria è facile. Per fare ciò, devi solo eliminarli dalla cartella Cloud Mail.Ru che si trova sul tuo computer.

    Consideriamo l'ultima funzione importante attraverso l'applicazione: l'accesso per scaricare il file selezionato ad altri utenti.

    Per ottenere un collegamento per scaricare qualsiasi file presente sul disco tramite l'applicazione, aprire la cartella Cloud Mail.ru, dove si trovano tutti i file, fare clic con il tasto destro su quello desiderato e selezionare "Cloud Mail.Ru: Copia pubblica link ":

Qui è dove abbiamo analizzato tutte le principali funzioni di lavorare con il servizio Cloud @ Mail.Ru ed è ora di passare al servizio successivo: Mega.

Registrazione nel servizio Mega

Considera il processo di creazione di un account nell'archivio file Mega, che fornisce 50 GB di spazio libero su disco gratuitamente. Come puoi vedere, il servizio è in inglese per impostazione predefinita, ma puoi cambiare la lingua in russo subito dopo aver creato un account.

Quindi, iniziamo la registrazione:

Questo completa la creazione del tuo account! Passiamo ora all'esame della funzionalità tramite un'interfaccia Web standard (ovvero tramite un browser).

Lavorare con l'archiviazione online Mega tramite l'interfaccia Web

Dopo aver registrato un account, l'interfaccia del servizio sarà simile a questa:

Cominciamo a considerare passo dopo passo tutte le principali funzioni del servizio:

Ora diamo un'occhiata all'interazione con l'archiviazione Mega online tramite un'applicazione Windows dedicata.

Mega gestione dell'archiviazione online tramite app Windows

Cominciamo installando l'app:

    Innanzitutto, devi scaricare l'applicazione come al solito. Puoi farlo dal tuo account.
    Vai alla sezione "Menu", seleziona il sottomenu "Applicazioni" e poi la voce "Applicazione di sincronizzazione":

    Sul nuova pagina scendiamo un po 'e premiamo il pulsante "Download gratuito per Windows":

    Il file verrà scaricato automaticamente. A volte è necessario specificare manualmente la cartella di download. Dipende dal browser.

    Dopo aver scaricato il file, trovalo sul tuo computer ed esegui:

    Inizierà il processo di installazione. Tali programmi di solito hanno quasi lo stesso processo di installazione. Nella prima finestra, seleziona la lingua e fai clic su "OK":

    Accettiamo contratto di licenza con il pulsante "Accetta":

    Nella fase successiva, consiglio di spostare il pulsante sulla voce "Installa per chiunque utilizzi questo computer", il che significa - installa per tutti gli utenti di questo computer, in modo che in futuro non ci siano problemi con l'accesso al programma:

    Nella finestra successiva, puoi specificare un nome diverso per la cartella nel menu Start, dove verranno posizionati i collegamenti al programma. È più comodo lasciare il nome predefinito. Premi il pulsante "Installa":

    Il processo di download inizierà file aggiuntivi da installare, che richiederà circa un minuto:

    Nell'ultima finestra, fai clic sul pulsante "Fine", lasciando un segno di spunta "Esegui MEGAsync 1.0.36":

    Il software è installato a questo punto e ora inizieranno alcuni passaggi di configurazione. Nella finestra successiva, seleziona la voce "Ho un account MEGA" se ti sei già registrato, ad esempio, secondo le istruzioni di questo articolo:

    Se non ti sei ancora registrato, seleziona il secondo elemento e procedi con la registrazione. Di conseguenza, non riesaminerò questo processo.

    Nella nuova finestra, inserisci il login (e-mail) e la password che hai specificato durante la registrazione e fai clic su "Avanti":

    Ora, dalle due opzioni di sincronizzazione, seleziona "Sincronizzazione completa" in modo che tutti i file e le cartelle che hai già scaricato nella memoria Mega siano sincronizzati con il tuo computer (cioè puoi vedere le cartelle ei file scaricati direttamente sul tuo computer):

    Premiamo il pulsante "Avanti".

    Ora abbiamo la possibilità di cambiare la cartella per l'archiviazione Mega sul tuo computer. In questa cartella scaricherai tutti i file che desideri siano sul drive online. Puoi lasciare la cartella predefinita o modificarla facendo clic su "Modifica". Di regola, lascio i percorsi uguali, perché questo è più conveniente e, in linea di principio, non ha senso cambiare il percorso.

    Dopo di che premere "Avanti":

    Nell'ultima finestra, fai clic sull'unico pulsante "Fine":

Questo completa l'installazione dell'applicazione. Immediatamente dopo l'installazione, riceverai una notifica e ci sarà un'icona dell'applicazione - Mega nella barra delle applicazioni di Windows:

Passiamo al principio di lavorare con il servizio Mega tramite applicazione installata.

Gestione dell'archiviazione online Mega tramite l'applicazione

L'app Mega desktop non ha impostazioni ed è facile da gestire. Qualsiasi utente di computer può gestirlo :)

Analizziamo tutto ciò che è a nostra disposizione tramite l'applicazione:

Anche il Mega storage è stato risolto. E ora diamo un'occhiata all'ultimo servizio di cui ho promesso di parlare in questo articolo: Microsoft OneDrive.

Iscriviti all'archivio cloud di Microsoft OneDrive

OneDrive di Microsoft ti offre 15 GB di spazio di archiviazione gratuito, paragonabile allo spazio di archiviazione gratuito fornito da Google.

Iniziamo il processo di registrazione:

Immediatamente dopo aver completato l'ultimo passaggio, si aprirà una pagina con il tuo spazio di archiviazione online su OneDrive.

Consideriamo come lavorare con esso tramite un browser.

Lavorare con OneDrive tramite l'interfaccia web

L'interfaccia del servizio OneDrive ha questo aspetto:

Come puoi vedere, è, in linea di principio, simile a tutti i servizi simili che abbiamo considerato in precedenza. Anche il principio di interazione qui è esattamente lo stesso. Analizziamolo:


In generale, non c'è niente di complicato nemmeno in questo servizio :)

Infine, ti mostrerò come lavorare con OneDrive tramite l'app, come ho mostrato in precedenza per tutti i servizi simili.

Lavorare con OneDrive tramite l'app di Windows

L'app di archiviazione online OneDrive non è supportata su Windows XP!

Installazione dell'applicazione su un computer:

Tutti! L'app desktop OneDrive è completamente installata e configurata. Resta da considerare come lavorarci.

Gestisci il tuo OneDrive online con l'app di Windows

Bene, in linea di principio, la gestione dello spazio di archiviazione di OneDrive tramite un'applicazione installata non è una novità. Tutto è esattamente lo stesso dei servizi simili precedentemente considerati. Leggi di seguito e guarda di persona :)

Bene, ecco tutto. Non ci sono altre funzionalità speciali nell'app OneDrive. Tutto è esattamente lo stesso delle applicazioni precedentemente recensite da altri sviluppatori.

Oggi ti ho parlato di lavorare con altri 3 servizi che forniscono un normale volume gratuito per l'archiviazione dei file, e probabilmente mi fermerò qui. Naturalmente, ci sono una dozzina di servizi simili in più, ma moltissimi non forniscono più di 5 GB di spazio libero gratuitamente. Ad esempio, il noto Dropbox offre solo 2 GB di spazio gratis, che è troppo poco e, di conseguenza, devi pagare per l'estensione.

Pertanto, penso che quei servizi con cui ti sei familiarizzato nei miei articoli siano sufficienti per te sopra il tetto per lavorare comodamente con i tuoi dati :)

Buona giornata! Fino a;)

Dopo il lancio del servizio MEGA alquanto scandaloso, le conversazioni sulla sua sicurezza sono aumentate un po 'e si sono spente. Oggi il servizio vive la propria vita e nessuno l'ha nemmeno spezzata. Per qualche ragione, il termine "User Controlled Encryption" (UCE, o User Controlled Cryptography), che MEGA vanta, è mancato in tutte le conversazioni. Con "mancante" intendo il fatto che non abbiamo coperto tutte le possibilità che ci offre un motore crittografico che gira in JavaScript sul lato client.

Ovviamente, il servizio MEGA stesso significa che le chiavi di crittografia non sono memorizzate sul server, ma il tutto loro la crittografia viene eseguita nel contesto del browser. Allo stesso tempo, dopo il lancio del servizio, si è parlato molto del fatto che utilizza algoritmi crittografici instabili e che tutto va male in generale e moriremo tutti, e l'FSB leggerà i nostri file. Questo mi ha spinto a pensare di espandere il concetto di "UCE" e prendere davvero il controllo della crittografia, ovvero sostituire o integrare alcuni dei meccanismi di sicurezza del servizio.

In questo articolo, analizzerò parte della magia che si verifica in due megabyte di MEGA JavaScript e ti mostrerò come puoi ignorare alcuni dei metodi per smettere di preoccuparti e amare la crittografia. Di conseguenza, otterremo un servizio di archiviazione file su cloud con autenticazione a due fattori e crittografia hardware delle informazioni critiche.

MEGA, UCE e tutto-tutto-tutto

Quindi, iniziamo dando uno sguardo alle tecnologie su cui è costruita la parte client del servizio, come vengono registrati i nuovi utenti, gli utenti registrati vengono autenticati, la modifica della password e il caricamento / download dei file.

JavaScript

Come forse già saprai, l'intero lato client del servizio è basato su JavaScript, nel codice home page I checksum SHA-256 vengono registrati per tutti gli script e le pagine caricate dal browser. Il download stesso avviene come segue: i checksum vengono controllati per tutti i file, dopodiché vengono combinati in un BLOB, che viene fornito al browser. Dal codice sorgente dei file js, puoi vedere che sono stati scritti da persone diverse e talvolta si trovano gemme divertenti, come le conseguenze del copia-incolla, condizioni prive di significato e solo strane variabili.

Nel processo di studio codice sorgente Ho anche notato che il sito viene aggiornato attivamente, gli sviluppatori correggono piccoli bug e ottimizzano il codice già scritto, il che è una buona notizia. Il codice stesso è scritto in modo molto semplice e senza involucri indebiti sotto forma di prototipi: il sito gestisce con trecento variabili globali e più di 8000 funzioni. È stato molto facile capire l'architettura del sito e modificarne il codice.

Da framework di terze parti, MEGA utilizza jQuery (da nessuna parte senza di esso), Ext JS e SJCL. Quest'ultimo implementa solo il core crittografico con crittografia AES. SJCL fornisce anche un formato interessante per memorizzare chiavi e altri array di byte: invece di riprodurre semplicemente i byte in un array normale, vengono "compressi" in un formato chiamato a32. La sua essenza è che il contenuto di qualsiasi array di byte è compresso in numeri a 32 bit e scritto in un array di lunghezza inferiore. Cioè, ogni 4 byte dell'array vengono convertiti in un banale int. Il codice del sito contiene funzioni che eseguono tutti i tipi di trasformazioni su un set estemporaneo (matrice a32, stringa, stringa base64).

Informazione chiave

Prima di procedere alla descrizione dei processi di registrazione e autenticazione, vale la pena considerare le informazioni che sono soggette a crittografia, ovvero:
  • Chiave principale account , che viene generato in modo casuale al momento della registrazione dell'utente e ha una lunghezza di 128 bit. In linea di principio, la lunghezza di tutte le chiavi utilizzate per la crittografia simmetrica è di 128 bit.
  • Chiave privata RSA: Creato al momento della registrazione in base ai movimenti del mouse e all'input da tastiera. In questo articolo, non mi concentrerò sulla crittografia asimmetrica, poiché viene utilizzata per condividere i file scaricati e il mio compito era modificare il processo di autenticazione e crittografia dei dati dell'utente.
  • Chiavi di file individuali e file stessicaricato nel servizio. Le chiavi vengono generate casualmente quando il file viene caricato, la chiave stessa viene utilizzata per crittografare i dati del file e la chiave generata dalla singola chiave del file e il suo checksum vengono utilizzati per crittografare gli attributi.

Più vicino al codice

Ora propongo di analizzare i processi di registrazione e autenticazione, vedere come viene creata la chiave master e come viene crittografata.
Qui ho cercato di rappresentare questi processi su un pezzo di carta e per darti una comprensione dell'intera essenza della follia, ho persino scattato questa foto:

Nuova registrazione utente

Il processo di registrazione stesso è piuttosto confuso, dopo che l'utente ha compilato il questionario, viene chiamato un potente gruppo di funzioni, ma siamo interessati alla funzione api_createuser:

// crea un nuovo utente e la sua funzione chiave principale api_createuser (ctx, invitecode, invitename, uh) (var i; var ssc \u003d Array (4); // session self challenge, verrà utilizzata per verificare la password var req, res; if (! ctx.passwordkey) (ctx.passwordkey \u003d Array (4); for (i \u003d 4; i--;) ctx.passwordkey [i] \u003d rand (0x100000000);) if (! u_k) api_create_u_k (); // genera una chiave master casuale u_k per (i \u003d 4; i--;) ssc [i] \u003d rand (0x100000000); // genera una sequenza di autenticazione casuale if (d) console.log ("api_createuser - masterkey:" + u_k + "passwordkey:" + ctx.passwordkey); // crittografa la chiave master con la password corrente e inviala al server (k field) // ts field è la concatenazione di ssc con il suo valore crittografato req \u003d (a: "up" , k: a32_to_base64 (encrypt_key (new sjcl.cipher.aes (ctx.passwordkey), u_k)), ts: base64urlencode (a32_to_str (ssc) + a32_to_str (encrypt_key (new sjcl.cipher.aes (u_k), ssc)) ); if (invitecode) (req.uh \u003d uh; req .ic \u003d invitecode; req.name \u003d invitename; ) if (d) console.log ("Storing key:" + req.k); api_req (, ctx); )
In questa funzione ci interessano le seguenti cose:

  • u_k: la chiave principale stessa, una variabile globale. Un array di 4 numeri a 32 bit creato dalla funzione api_create_uk
  • ssc è solo un array casuale che viene crittografato sulla chiave principale, concatenato con il suo valore pubblico e inviato al server. Successivamente verrà utilizzato per verificare la correttezza della chiave master durante l'autenticazione.
  • sjcl - libreria crittografica che implementa AES
  • rand () è un'implementazione locale di un generatore di numeri pseudo-casuali basato su RC4
  • encrypt_key () è la funzione cardine della crittografia simmetrica del servizio. Accetta un oggetto sjcl inizializzato da chiave e un array da crittografare. Il codice della funzione è mostrato di seguito e si spera autoesplicativo.
// crittografa / decrittografa funzione array di numeri interi a 32 bit a 4 o 8 elementi encrypt_key (cipher, a) (if (a.length \u003d\u003d 4) return cipher.encrypt (a); var x \u003d; for (var i \u003d 0; i< a.length; i += 4) x = x.concat(cipher.encrypt(, a, a, a])); return x; }
Di conseguenza, dopo la registrazione, vengono inviati al server:
  • Chiave master, crittografata sulla chiave derivata dalla password dell'account
  • Stringa come ssc || encrypt_AES-128 (u_k, ssc)

Login utente

Ora puoi passare senza problemi al processo di autenticazione. In breve, è fatto così:
  1. L'utente inserisce login / password
  2. Se viene superata la prima fase di autenticazione, dal server vengono inviate una chiave master crittografata e una sequenza di autenticazione (ssc) generata durante la registrazione
  3. La chiave principale viene decrittografata utilizzando la password inserita dall'utente
  4. La sequenza di autenticazione viene decrittografata sulla chiave principale e confrontata con il suo valore pubblico, quindi viene verificata la correttezza della chiave principale e della password.
La funzione di callback api_getsid2 è responsabile di tutto quanto sopra:

// decrittografa la chiave principale dopo che l'utente ha effettuato l'accesso alla funzione api_getsid2 (res, ctx) (var t, k; var r \u003d false; if (typeof res \u003d\u003d "object") (// inizializza sjcl-aes con la password dell'account corrente var aes \u003d new sjcl.cipher.aes (ctx.passwordkey); // se abbiamo ricevuto una chiave master nella risposta del server ... if (typeof res.k \u003d\u003d "string") (k \u003d base64_to_a32 (res.k); if (k.length \u003d\u003d 4) (// ... then decrypt it k \u003d decrypt_key (aes, k); // e reinizializza sjcl-aes usando la chiave master aes \u003d new sjcl.cipher.aes ( k); // se abbiamo ricevuto ssc dal processo di registrazione if (typeof res.tsid \u003d\u003d "string") (t \u003d base64urldecode (res.tsid); // crittografa la prima metà della stringa e confronta con il valore dal server // se lo sono matched - significa che tutte le presenze e le password corrispondono e puoi consentire all'utente di entrare if (a32_to_str (encrypt_key (aes, str_to_a32 (t.substr (0, 16)))) \u003d\u003d t.substr (-16)) r \u003d;) // di seguito analizziamo la chiave privata della coppia RSA, non ci interessa ancora se (typeof res.csid \u003d\u003d "s tring ") (var t \u003d mpi2b (base64urldecode (res.csid)); var privk \u003d a32_to_str (decrypt_key (aes, base64_to_a32 (res.privk))); var rsa_privk \u003d Array (4); // decompone la chiave privata per (var i \u003d 0; i< 4; i++) { var l = ((privk.charCodeAt(0) * 256 + privk.charCodeAt(1) + 7) >\u003e 3) + 2; rsa_privk [i] \u003d mpi2b (privk.substr (0, l)); if (typeof rsa_privk [i] \u003d\u003d "number") break; privk \u003d privk.substr (l); ) // controlla il formato if (i \u003d\u003d 4 && privk.length< 16) { // TODO: check remaining padding for added early wrong password detection likelihood r = ; } } } } } ctx.result(ctx, r); }
Come bonus alla registrazione / autenticazione, puoi esaminare il processo di modifica della tua password.

// cambia la funzione password dell'utente changepw (currentpw, newpw, ctx) (var pw_aes \u003d new sjcl.cipher.aes (prepare_key_pw (newpw)); api_req ([(a: "up", currk: a32_to_base64 (encrypt_key (new sjcl. cipher.aes (prepare_key_pw (currentpw)), u_k)), k: a32_to_base64 (encrypt_key (pw_aes, u_k)), uh: stringhash (u_attr ["email"]. toLowerCase (), pw_aes))], ctx);)
Il codice per questa funzione parla da solo: crittografiamo la chiave master su due chiavi ottenute dalla vecchia e dalla nuova password, quindi inviamo questi valori al server. Se viene visualizzata la password corrente, viene sostituita con una nuova. Qui vorrei prestare maggiore attenzione alla funzione prepare_key_pw, che era implicitamente presente in tutte le operazioni precedenti. Il suo compito è convertire una password di stringa in un array a32, quindi eseguire un'operazione di derivazione della chiave come segue:

// converte la funzione array di password fornita dall'utente prepare_key (a) (var i, j, r; var aes \u003d; var pkey \u003d; for (j \u003d 0; j< a.length; j += 4) { key = ; for (i = 0; i < 4; i++) if (i + j < a.length) key[i] = a; aes.push(new sjcl.cipher.aes(key)); } for (r = 65536; r--;) for (j = 0; j < aes.length; j++) pkey = aes[j].encrypt(pkey); return pkey; }
Questa funzione ha ricevuto molte critiche in quanto si basa su un algoritmo homebrew. Durante questa stesura, i creatori del servizio sono riusciti a modificare leggermente il suo codice, ma qui non ho notato alcun cambiamento significativo. La sua essenza sta nel fatto che la password trasmessa è crittografata 65536 volte su una chiave costante al fine di ottenere una chiave indistinguibile da una chiave casuale. Il motivo per cui i creatori del servizio non hanno utilizzato gli algoritmi esistenti (ad esempio PBKDF2) rimane un mistero.

Caricamento e crittografia dei file

In breve, l'intero processo può essere rappresentato così:

Ti avverto che approfondire a lungo questa immagine è pericoloso per il cervello, quindi di seguito ti dirò come tutto accade.

Come ho già detto, durante il caricamento di ogni file, viene creato un array di chiavi casuale di 6 numeri a 32 bit. I primi quattro elementi di questo array vengono utilizzati per crittografare il contenuto del file e gli ultimi due vengono utilizzati come valori iniziali contatore utilizzato per calcolare il checksum del file. Questo array è memorizzato nella variabile globale ul_key. Il suo contenuto viene scritto nella stringa ul_KeyNonce serializzata in JSON.

L'effettiva crittografia (dec) avviene utilizzando il Web Worker (se il browser supporta questa tecnologia) o semplicemente all'interno del codice della pagina principale. Quando il file è pronto per essere inviato, per crittografare i suoi attributi (da questo momento attributi significano solo il nome del file) viene creata una nuova chiave di file in base a ul_key e al checksum del file. Questa chiave viene quindi crittografata sulla chiave master e inviata al server insieme agli attributi del file. Le funzioni initupload3 e api_completeupload2 sono responsabili di tutte queste azioni. La creazione del filekey avviene nella funzione ul_chunkcomplete, di seguito ne darò una parte.

// avvia il caricamento del file: crea la sua chiave privata e inizializza la funzione del meccanismo di crittografia initupload3 () (// ... cut \u003d) // crea una chiave di file privata casuale // ul_key viene utilizzata nel codice della pagina, // ul_keyNonce viene passato al web worker usato lì // per crittografare il file e calcolare il suo checksum ul_key \u003d Array (6); for (i \u003d 6; i--;) ul_key [i] \u003d rand (0x100000000); ul_keyNonce \u003d JSON.stringify (ul_key); ul_macs \u003d; // ... poi viene elaborata la coda di download, non interessa ... // inizializzazione di sjcl-aes per un file basato su ul_key ul_aes \u003d new sjcl.cipher.aes (); // ... // avvia il processo di caricamento del file: // leggilo dal disco, crittografa e invia suUploadStart (ul_queue_num); ul_dispatch_chain (); ) // crea una chiave per crittografare gli attributi del file function ul_chunkcomplete (slot, pos, response) (// ... var t \u003d; // ul_macs è un array con il checksum del file ricevuto all'interno del worker "e per (p in ul_macs) t .push (p); // riempiendo e ordinando l'array temporaneo, se qualcuno sa perché, per favore spiega t.sort (function (a, b) (return parseInt (a) -parseInt (b))); for (var i \u003d 0; i< t.length; i++) t[i] = ul_macs]; // внутри condenseMacs производится зашифрование // и "уплотнение" контрольной суммы файла в массив из 4х элементов var mac = condenseMacs(t,ul_key); ul_settimeout(-1); // на основе контрольной суммы и ключа файла создается ключ для шифрования атрибутов // он же в зашифрованном виде позже будет отправлен на сервер var filekey = ; // ... } // завершение загрузки файла: зашифрование атрибутов и ключа файла и отправка их на сервер function api_completeupload2(ctx, ut) { var p; if (ctx.path && ctx.path != ctx.n && (p = ctx.path.indexOf("/")) > 0) (var pc \u003d ctx.path.substr (0, p); ctx.path \u003d ctx.path.substr (p + 1); fm_requestfolderid (ut, pc, ctx);) else (// crittografa il nome del file in chiave derivata da ul_key e checksum // ctx.k \u003d\u003d filekey a \u003d (n: ctx.n); if (d) console.log (ctx.k); var ea \u003d enc_attr (a, ctx.k) ; if (d) console.log (ea); // trasferimento di attributi e chiave file crittografata sulla chiave master var req \u003d (a: "p", t: ut, n: [(h: ctx.t, t: 0, a: ab_to_base64 (ea), // attributi k: a32_to_base64 (encrypt_key (u_k_aes, ctx.k)), // \u003d\u003d AES_encrypt (u_k, filekey) fa: ctx.fa)]); if (ut) ( // è stata fornita una destinazione: crittografa a tutte le condivisioni rilevanti var sn \u003d fm_getsharenodes (ut); if (sn.length) (req.cr \u003d crypto_makecr (, sn, false); req.cr \u003d ctx.t;)) api_req (, ctx.ctx);))

Download e decrittografia di file

Ovviamente, questi processi dovrebbero essere solo l'opposto della crittografia del file. L'unica cosa che potrebbe interessare è ottenere il valore della chiave ul_key dal valore filekey crittografato fornito dal server.

Al momento del download del file, il contesto del browser contiene già un oggetto che memorizza le chiavi del file decrittografate. Pertanto, all'inizio ha senso considerare il processo che si verifica immediatamente dopo l'autenticazione dell'utente, ovvero il caricamento del file manager. Dopo che l'utente è autorizzato al servizio, desidera naturalmente avere accesso ai suoi file (supponiamo che li avesse già lì). Per fare ciò, dobbiamo prima decrittografare le chiavi dei file e poi i loro attributi. Questa attività è gestita da un altro gruppo di funzioni, di cui siamo interessati a loadfm_callback e process_f_f.

In breve, il processo per ottenere attributi di file può essere descritto dal seguente algoritmo:

  1. Attendi il caricamento del file manager (loadfm_callback), dove ottenere JSON con una descrizione di tutti i file caricati
  2. Creare un array farray, in cui inserire un array con informazioni sui file
  3. Esegui (ricorsivamente) la funzione process_f_f per ogni file
  4. Per ogni file che ha una chiave, decrittografa questa chiave e gli attributi (funzione crypto_processkey) e salvali di nuovo in un array con le informazioni sul file
  5. Successivamente, salva i valori decrittografati nella variabile FileStore (fine della ricorsione in process_f_f)
Di seguito fornirò estratti dal codice che illustrano questo algoritmo.

// callback per caricare la funzione di gestione file loadfm_callback (json, res) (// ... // elaborazione JSON con informazioni sui file json \u003d json; if (d) console.log (json); if (d) console.log (json); if (json.u) process_u (json.u, false); if (json.ok) process_ok (json.ok); if (json.s) (for (i in json.s) (if ( u_sharekeys.h]) (sharingData.push ((id: json.s [i] .h + "_" + json.s [i] .u, userid: json.s [i] .u, folderid: json. s [i] .h, diritti: json.s [i] .r, data: json.s [i] .ts)); sharednodes.h] \u003d true;))) // ... niente di speciale. .. // inserendo informazioni sui file in un altro array globale farray \u003d new Object; farray.f \u003d json.f; // inizia a elaborarlo, il callback è stato dichiarato sopra // in questa funzione e modifica semplicemente il layout process_f (fi, false , callback); fi ++;) // funzione ricorsiva, in cui le chiavi e gli attributi dei file vengono decrittati // chiamata dalla funzione process_f process_f_f (fid) (// condizione per la fine della ricorsione - abbiamo elaborato tutti i file nell'array fa rray if (! farray.f.i]) (if (farray.ap) FileStore.suspendEvents (); // scrive i dati in FileStore FileStore.loadData (farray.mdata, true); if (farray.ap) FileStore.resumeEvents (); if (d) console.log ("call reqmissingkeys:"); crypto_reqmissingkeys (); if (farray.callback) farray.callback.fn (farray.callback); return false; ) var f \u003d farray.f.i]; f.attrs \u003d f.a; if (f.sk) u_sharekeys \u003d crypto_process_sharekey (f.h, f.sk); // se il file corrisponde al tipo e ha una chiave, elaboralo if ((ft! \u003d\u003d 2) && (ft! \u003d\u003d 3) && (ft! \u003d\u003d 4) && (fk)) (crypto_processkey (u_handle, u_k_aes , f); // la descrizione di questa funzione è sotto u_nodekeys \u003d f.key; if ((typeof f.name! \u003d\u003d "undefined") && (fp \u003d\u003d InboxID)) InboxCount ++;) else (if (fa) (if ( ! missingkeys) (missingkeys \u003d true; newmissingkeys \u003d true;)) fk \u003d ""; f.name \u003d "";) if (ft \u003d\u003d 2) RootID \u003d fh; altrimenti se (f.t \u003d\u003d 3) InboxID \u003d f.h; altrimenti se (f.t \u003d\u003d 4) TrashbinID \u003d f.h; altrimenti se ((f.t< 2) || (f.t == 5)) { // тут идет обработка расшаренных файлов } else { // подготовка массива для записи в FileStore farray.mdata.push({ id: f.h.replace(/[^a-z^A-Z^0-9^_^-]/g, ""), name: f.name, size: f.s, type: filetype(f.name, f.t), icon: fileicon(f.name, icontype), parentid: f.p, folder: f.t, owner: f.u, date: f.ts, attrs: f.attrs, key: f.key, r: f.r, su: f.su, fa: f.fa, }); if (f.p == TrashbinID) trashbinfull = true; if (((f.t) && (farray.ap)) || (f.p == InboxID)) refreshtree = true; } farray.i++; // проверка таймаута (видимо, чтобы загрузка файл-менеджера не выглядела слишком долгой) timeoutcount++; if (!(timeoutcount & 63)) { // если у нас больше 63 файлов - дальше грузим их асинхронно setTimeout("process_f_f(" + fid + ")", 1); timeoutcount2++; } // иначе - запускаем обработку следующего файла else process_f_f(fid); } // обработка ключа файла и его атрибутов function crypto_processkey(me, master_aes, file) { var id, key, k, n; if (!file.k) { if (!keycache) return; file.k = keycache; } id = me; // do I own the file? (user key is guaranteed to be first in .k) // ключ записан в виде ":/"var p \u003d file.k.indexOf (id +": "); // prima controlla se il file è condiviso if (p) (// I don" t - ho una sharekey adatta? per (id in u_sharekeys) (p \u003d file.k.indexOf (id + ":"); if (p\u003e \u003d 0 && (! p || file.k.charAt (p - 1) \u003d\u003d "/")) break; p \u003d -1;)) // e poi possiamo procedere alla decrittazione if (p\u003e \u003d 0) (delete keycache; // slash - apparentemente il segno delle palline var pp \u003d file.k.indexOf ("/", p); if (pagg< 0) pp = file.k.length; p += id.length + 1; key = file.k.substr(p, pp - p); // we have found a suitable key: decrypt! if (key.length < 46) { // short keys: AES k = base64_to_a32(key); // check for permitted key lengths (4 == folder, 8 == file) if (k.length == 4 || k.length == 8) { // ключ расшифровывается либо на мастер-ключе, либо на общем ключе шары k = decrypt_key(id == me ? master_aes: new sjcl.cipher.aes(u_sharekeys), k); } else { if (d) console.log("Received invalid key length (" + k.length + "): " + file.h); return; } } else { // long keys: RSA if (u_privk) { var t = mpi2b(base64urldecode(key)); if (t) k = str_to_a32(crypto_rsadecrypt(t, u_privk).substr(0, file.t ? 16: 32)); else { if (d) console.log("Corrupt key for node " + file.h); return; } } else { if (d) console.log("Received RSA key, but have no public key published: " + file.h); return; } } // декодируем атрибуты файла var ab = base64_to_ab(file.a); // и расшифровываем их с помощью только что полученного ключа var o = dec_attr(ab, k); if (typeof o == "object") { if (typeof o.n == "string") { if (file.h) { u_nodekeys = k; if (key.length >\u003d 46) rsa2aes \u003d a32_to_str (encrypt_key (u_k_aes, k)); ) // se abbiamo decriptato correttamente la chiave e gli attributi, salvali nell'oggetto file file.key \u003d k; file.name \u003d o.n; ))) else (if (d) console.log ("Ricevuta nessuna chiave adatta:" + file.h); if (! missingkeys) (newmissingkeys \u003d true; missingkeys \u003d true;) keycache \u003d file.k;))
Dopodiché possiamo ottenere il valore dell'ul_key originale dal contesto del browser in questo modo: dl_keyNonce \u003d JSON.stringify ();
Questa conversione avviene nella funzione startdownload. Se consideriamo che il valore dl_key \u003d\u003d filekey dalla funzione ul_chunkcomplete ed eseguiamo alcune semplici operazioni di aggiunta modulo, noteremo che la variabile dl_keyNonce memorizzerà il valore ul_key generato quando il file viene caricato. Un'illustrazione di questo può essere vista nell'angolo in basso a sinistra della scheda nella foto all'inizio della sezione di caricamento del file.

Sovraccarico delle operazioni crittografiche

Nonostante il fatto che i principi di protezione di file e chiavi di cui sopra siano molto sicuri, ad alcuni potrebbe non piacere che siamo ancora dipendenti dall'implementazione degli algoritmi forniti dal servizio. In questo caso, possiamo sviluppare la nostra estensione per browser che sovrascriverà alcune delle funzioni del servizio, implementando una crittografia aggiuntiva in esse. Vale a dire, ho deciso di implementare la protezione delle informazioni chiave (chiave master e chiavi file) utilizzando la crittografia hardware su una chiave non recuperabile utilizzando l'algoritmo GOST 28147-89. Un bonus a questo sarà anche l'inclusione dell'autenticazione a due fattori nel servizio.
Quindi, considera questo caso d'uso:
  • L'utente si registra al servizio
  • Quindi installa l'estensione
  • Con il suo aiuto, la crittografia hardware della chiave master viene eseguita utilizzando una chiave che non può essere recuperata dal token.
  • La chiave master crittografata in questo modo viene caricata sul server
Dopodiché, sarà impossibile ottenere il valore della chiave master senza avere un token e il suo codice PIN. Questo darà:
  1. Autenticazione a due fattori sul servizio (senza una chiave master decrittografata correttamente, la funzione api_getsid2 fallirà)
  2. Senza il token, sarà anche impossibile cambiare la password dell'account corrente
Il passaggio successivo consiste nel crittografare la chiave di crittografia del file (nota anche come ul_key) e la chiave degli attributi del file (filekey), che è archiviata sul server, utilizzando il token. Quindi, otterremo che ogni file verrà crittografato su una chiave che non raggiungerà mai il server, dove andrà la chiave di file che abbiamo crittografato dalla funzione api_completeupload2. Gli attributi del file verranno crittografati sul valore filekey aperto. Per motivi di chiarezza, ho abbozzato il seguente diagramma che illustra il processo di caricamento dei file:

Voglio sottolineare che ho usato un metodo molto complicato qui. In questo caso, è importante per noi che un utente malintenzionato non possa decrittografare il file, anche se intercetta la chiave del file proveniente dal server e conosce la chiave principale dell'utente. Pertanto, qui puoi giocare sulle funzionalità dell'architettura del servizio e utilizzare il valore della chiave ul_keyNonce (noto anche come dl_keyNonce), ottenuto come risultato della crittografia del valore della chiave ul_key (o dl_key) sul token, per (dec) crittografare i file.

Da quando sono stati scritti questi articoli, il nostro prodotto ha aggiunto la possibilità di crittografare l'hardware utilizzando l'algoritmo GOST 28147-89. È possibile scaricare una versione beta del plug-in con funzionalità di crittografia hardware secondo l'algoritmo GOST 28147-89. Questa versione del plugin non ha ancora superato il test completo, quindi ti avverto che potrebbero esserci degli errori, che ti chiedo di segnalare in PM sulla ricerca.
Nell'interfaccia del plugin, la crittografia simmetrica è implementata dalla funzione di crittografia, che ha la seguente sintassi:
crittografare (deviceId, keyLabel, data, resultCallback, errorCallback) → (stringa)
La funzione prende come input:

  • Identificatore del dispositivo, numero
  • Etichetta chiave per crittografia, numero (se non esiste tale chiave, verrà generata)
  • Dati crittografati, stringa (una stringa contenente un array di byte come "aa: bb: cc: dd")
  • Funzioni di richiamata per operazioni di crittografia riuscite e non riuscite
La decrittografia viene eseguita allo stesso modo utilizzando la funzione di decrittografia
Particolare attenzione dovrebbe essere prestata all'etichetta della chiave, poiché determina quale chiave verrà utilizzata per la crittografia dei dati (decrittografia). L'etichetta è una stringa arbitraria e viene utilizzata principalmente per identificare facilmente la chiave. In questo caso, utilizzo due coppie di chiavi: una per (dec) crittografare la chiave principale e l'altra per crittografare le singole chiavi dei file. La chiave su cui è crittografata la chiave master ha un'etichetta uguale alla password dell'utente (ora mi è venuta l'idea di utilizzare un hash dalla stringa della e-mail || password, lo aggiusterò nel prossimo futuro). Per crittografare le chiavi dei file caricati, viene utilizzata una chiave con un'etichetta uguale alla rappresentazione di stringa della chiave principale (qui dovresti usare anche l'hash della chiave principale).

Sviluppo diretto

Voglio solo fare un commento sul mio codice sorgente: è, infatti, in versione alpha, sebbene implementa le funzionalità sopra descritte. Non ho verificato fino a che punto la mia modifica si è rivelata compatibile con il resto delle funzioni del servizio, quindi ho pubblicato tutti i sorgenti su GitHub e sarò felice di qualsiasi aiuto per migliorare questo sistema. Pertanto, non riempirò ulteriormente l'articolo con elenchi enormi, ma descriverò solo lo schema generale del lavoro dell'estensione.

L'estensione finita può essere scaricata. È stato sviluppato utilizzando il servizio Crossrider, che fornisce estensioni per tre browser (Chrome, Firefox e IE), ma è meglio verificarne il funzionamento in Chrome o Firefox, e nel primo funziona molto più stabile.

Il codice dell'estensione è banalmente semplice: controlla se siamo sulla pagina del servizio e, in tal caso, carica solo script aggiuntivi. Questi script modificano il codice della pagina aggiungendo un paio di finestre di dialogo e sovrascrivono le seguenti funzioni di servizio:

  • changepw: responsabile della modifica della password
  • api_getsid2: uno dei callback di accesso
  • api_completeupload2: callback per il completamento del caricamento del file
  • loadfm_callback: callback per caricare il file manager
  • processpacket: un altro callback, che decrittografa gli attributi del file appena caricato
  • parsepage: responsabile del disegno di finestre di dialogo aggiuntive
  • dologin: espande le capacità di autenticazione
  • initupload3: responsabile della generazione della chiave di crittografia del file
  • startdownload: analizza al contrario la chiave del file e inizializza il download
Ancora una volta, voglio avvisarti che non dovresti trascinare l'estensione su un account di lavoro (se qualcuno qui usa questo servizio), ma piuttosto avviarne uno di prova. Per poter utilizzare l'estensione dopo averla installata, avrai bisogno di:
  1. Per cominciare, è una buona idea ottenere Rutoken EDS (o Rutoken Web) e installare un plug-in per il browser
  2. Installa l'estensione
  3. Accedi al servizio con l'estensione disabilitata
  4. Abilita l'estensione del browser
  5. Vai alla pagina dell'account
  6. Fare clic sul pulsante "Bind token"
  7. Immettere la password corrente ed eseguire questa operazione
Invece di un'estensione, puoi utilizzare il seguente bookmarklet (testato in Chrome, Safari, Firefox): javascript: (function () (if (document.getElementById ("cryptorutokenjs")) (alert ("Plugin già installato"); return) funzione loadRemoteScript (url ) (var script \u003d document.createElement ("script"); script.type \u003d "text / javascript"; script.src \u003d url; document.head.appendChild (script)) funzione loadRemoteStyle (url) (var style \u003d document. createElement ("link"); style.rel \u003d "stylesheet"; style.type \u003d "text / css"; style.href \u003d url; document.head.appendChild (style)) loadRemoteStyle ("https: // mega-crypto .googlecode.com / git / mega.css "); loadRemoteScript (" https://mega-crypto.googlecode.com/git/util.js "); loadRemoteScript (" https://mega-crypto.googlecode.com /git/rutoken-extra.js");loadRemoteScript("https://mega-crypto.googlecode.com/git/rutoken-crypto.js");loadRemoteScript("https://mega-crypto.googlecode.com /git/mega.js "))) ();

Dimostrazione di lavoro

Per prima cosa, colleghiamo la nostra creazione al sito. Per questo:

Quindi puoi disconnetterti dal servizio e provare ad accedere di nuovo utilizzando l'autenticazione a due fattori:

In questo caso, l'autenticazione avviene secondo il seguente schema:

  1. Verifica della coppia login-password sul server
  2. Se la password di accesso è corretta, la chiave master crittografata proviene dal server
  3. Il plugin richiede un codice PIN per il token
  4. Se il PIN è inserito correttamente, la chiave master sulla chiave viene decrittografata dal token

Invece di una conclusione

Qui voglio solo scrivere "per essere continuato ...", poiché non ho trattato i dettagli della creazione di un'estensione e l'interesse di avvitare funzioni di crittografia asincrona in un servizio che nella maggior parte dei casi utilizza chiamate sincrone. Per concludere questo articolo, vorrei rivisitare l'idea di implementare la crittografia lato client.
L'approccio all'implementazione di ulteriori funzioni crittografiche lato client può essere applicato a qualsiasi servizio web che non si preoccupi di ciò che memorizza sul proprio server: sia esso un archivio di file, una posta o una semplice chat. Ad esempio, è possibile implementare la posta sicura basata su qualsiasi servizio di posta utilizzando la crittografia dei messaggi nel formato CMS e meccanismi di scambio di chiavi utilizzando l'algoritmo VKO GOST R 34.10-2001.
Grazie per la vostra attenzione, accolgo con favore le vostre domande e commenti Javascript Aggiungi tag

LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam