[{"data":1,"prerenderedAt":200},["ShallowReactive",2],{"tag-magento":3},[4],{"id":5,"title":6,"body":7,"categories":180,"coverImage":182,"date":183,"description":184,"extension":185,"lang":186,"legacy":187,"meta":188,"navigation":189,"path":190,"seo":191,"stem":192,"sticky":187,"tags":193,"translation":198,"updated":198,"__hash__":199},"articles/migrare-da-magento-2-a-woocommerce-la-sfida-delle-password.md","Migrare da Magento 2 a WooCommerce: La Sfida delle Password",{"type":8,"value":9,"toc":167},"minimark",[10,14,19,22,27,30,34,37,41,44,48,51,55,63,73,78,81,84,88,96,115,118,122,128,135,139,146,149,152,156],[11,12,13],"p",{},"Mi sono imbattuto in una sfida interessante: creare un plugin per WordPress che permettesse una migrazione senza soluzione di continuità degli utenti da Magento 2 a WooCommerce. Sembra semplice, vero? Lo pensavo anche io, prima di rendermi conto che mi trovavo di fronte a un terreno inesplorato, senza una libreria, un plugin o una guida a cui fare riferimento. Lasciatemi spiegare.",[15,16,18],"h2",{"id":17},"woocommerce-vs-magento-perché-scegliere-woocommerce","WooCommerce vs Magento: perché scegliere WooCommerce?",[11,20,21],{},"Quando si tratta di scegliere una piattaforma di e-commerce, WooCommerce e Magento sono due dei nomi più popolari che vengono in mente. Entrambi offrono un'ampia gamma di funzionalità che possono aiutare a costruire un negozio online robusto. Tuttavia, ci sono diverse ragioni per cui potresti voler scegliere WooCommerce su Magento. Ecco alcuni dei vantaggi principali:",[23,24,26],"h4",{"id":25},"facilità-duso","Facilità d'uso",[11,28,29],{},"WooCommerce è noto per la sua facilità d'uso. È un plugin di WordPress, il che significa che si integra perfettamente con qualsiasi sito WordPress esistente. Se hai già familiarità con WordPress, allora imparare a usare WooCommerce sarà un gioco da ragazzi. Magento, d'altra parte, ha una curva di apprendimento più ripida e può essere più complicato da configurare e gestire.",[23,31,33],{"id":32},"flessibilità-e-personalizzazione","Flessibilità e personalizzazione",[11,35,36],{},"WooCommerce offre una grande flessibilità quando si tratta di personalizzare il tuo negozio. Ci sono migliaia di temi e plugin disponibili che ti permettono di aggiungere nuove funzionalità e cambiare l'aspetto del tuo negozio con facilità. Magento offre anche molte opzioni di personalizzazione, ma può richiedere più competenze tecniche per apportare modifiche significative.",[23,38,40],{"id":39},"costi","Costi",[11,42,43],{},"WooCommerce è un plugin gratuito, il che lo rende una scelta eccellente per le piccole imprese o per chi è alle prime armi con l'e-commerce. Anche se ci sono costi associati all'hosting del tuo sito e all'acquisto di temi o plugin premium, questi costi sono generalmente più bassi rispetto a quelli di Magento. Magento offre una versione gratuita (Magento Open Source), ma per accedere a tutte le funzionalità e al supporto dovrai optare per estensioni premium o a Magento Commerce, ad un costo significativo.",[23,45,47],{"id":46},"supporto-della-comunità","Supporto della comunità",[11,49,50],{},"Sia WooCommerce che Magento hanno comunità di sviluppatori attive, ma la comunità di WordPress (e quindi di WooCommerce) è molto più grande. Questo significa che è più facile trovare risorse, tutorial e soluzioni a problemi comuni con WooCommerce.",[15,52,54],{"id":53},"migrazione","Migrazione",[11,56,57,58,62],{},"Mentre Magento può essere una scelta eccellente per le grandi imprese che necessitano di una soluzione di e-commerce robusta, WooCommerce offre una soluzione più accessibile e user-friendly che è ",[59,60,61],"strong",{},"perfetta per le piccole imprese",".",[11,64,65,66,72],{},"Per questi motivi, talvolta le imprese di piccole dimensioni che hanno adottato Magento inizialmente, si trovano in difficoltà con costi e rigidità difficilmente sostenibili ed optano per un'attività di ",[59,67,68],{},[69,70,71],"em",{},"replatforming"," per proseguire le vendite su WooCommerce.",[74,75,77],"h3",{"id":76},"i-vantaggi-di-una-transizione-fluida","I Vantaggi di una transizione fluida",[11,79,80],{},"Una delle principali preoccupazioni quando si migra da una piattaforma all'altra è la frizione percepita dall'utente finale, che potrebbe incidere negativamente sulle conversioni.",[11,82,83],{},"Se mantenere la struttura generale del sito ecommerce familiare (o addirittura identica) ed il catalogo intatto è ragionevolmente semplice, non lo è quando si tratta di autenticazione.",[74,85,87],{"id":86},"magento-2-e-wordpress-autenticazione-a-confronto","Magento 2 e WordPress: autenticazione a confronto",[11,89,90,91,95],{},"WordPress utilizza una tecnologia chiamata ",[92,93,94],"code",{},"phpass"," per l'hashing delle password. Si tratta di un framework di hashing delle password di dominio pubblico portatile per l'uso in applicazioni PHP.",[11,97,98,99,102,103,108,109,114],{},"Magento 2, d'altra parte, utilizza un algoritmo di hashing delle password più complesso. Da un lato infatti utilizza ",[92,100,101],{},"sodium"," (incluso in PHP dalla versione 7.2), dall'altro utilizza una tecnica chiamata ",[59,104,105],{},[69,106,107],{},"hash stretching"," per aumentare la sicurezza delle password hashate. Questo comporta l'hashing della password più volte (per di più con l'aggiunta di una stringa casuale detta ",[59,110,111],{},[69,112,113],{},"salt"," che ne aumenta ulteriormente la complessità).\nQuesto approccio rende il processo di hashing estremamente intensivo dal punto di vista computazionale, il che può aiutare a rallentare un attaccante che sta cercando di indovinare la password.",[11,116,117],{},"Questa sostanziale differenza nel processo di hashing delle password le rende incompatibili quando importate direttamente da Magento a WordPress e viceversa.",[74,119,121],{"id":120},"approcci-comuni","Approcci comuni",[11,123,124,125,62],{},"La soluzione più comune è quella di forzare il reset delle password degli utenti. Questo può essere un processo fastidioso per gli utenti e ",[59,126,127],{},"può portare a una perdita di traffico e di fiducia",[11,129,130,131,134],{},"Un'altra soluzione diffusa è quella di introdurre un meccanismo che verifichi la correttezza della password attraverso un login via API verso la vecchia piattaforma. Ciò però comporta la ",[59,132,133],{},"necessità di mantenere attiva ed accessibile a tempo indefinito la vecchia piattaforma",". Per di più in caso di down di quest'ultima il meccanismo fallirà.",[15,136,138],{"id":137},"la-mia-soluzione-insegnare-a-wordpress-come-comprendere-le-password-di-magento","La mia soluzione: insegnare a WordPress come comprendere le password di Magento",[11,140,141,142,145],{},"Dopo aver letto miriadi di articoli fuorvianti, ho deciso di sporcarmi le mani e di analizzare la classe ",[92,143,144],{},"Encryptor"," di Magento 2 per comprenderne a pieno l'algoritmo (e sì, avevo dapprima provato a\nchiedere a chatGPT4, con esito fallimentare). Da questo studio è scaturito un plugin WordPress leggerissimo che consente a WordPress di interpretare gli hash generati su Magento.",[11,147,148],{},"Il plugin si aggancia alla funzione di autenticazione di WordPress e verifica che l'hash importato dal database Magento 2 corrisponda alla password inserita, per poi eventualmente procedere\na creare un nuovo hash nativo di WordPress.",[11,150,151],{},"Gli utenti possono dunque effettuare il login su WordPress con le loro password Magento 2 esistenti, rendendo la transizione trasparente.",[15,153,155],{"id":154},"open-source","Open Source",[11,157,158,159,166],{},"In piena filosofia open source, e per contribuire ad ambedue le community ho deciso di rilasciare questo plugin sotto licenza GPL2 sia sul repository dei plugin di WordPresss che\nsu ",[160,161,165],"a",{"href":162,"rel":163},"https://github.com/enricodeleo/wp-password-migration-magento/",[164],"nofollow","GitHub"," per eventuali contribuzioni da parte di altri dev.",{"title":168,"searchDepth":169,"depth":169,"links":170},"",2,[171,172,178,179],{"id":17,"depth":169,"text":18},{"id":53,"depth":169,"text":54,"children":173},[174,176,177],{"id":76,"depth":175,"text":77},3,{"id":86,"depth":175,"text":87},{"id":120,"depth":175,"text":121},{"id":137,"depth":169,"text":138},{"id":154,"depth":169,"text":155},[181],"dev","https://i2.wp.com/enricodeleo.s3.eu-south-1.amazonaws.com/images/migration.jpeg","2023-06-07T12:27:00.000Z","La vera sfida nel rendere fluida la migrazione tra Magento e WooCommerce (WordPress). Un viaggio nell'algoritmo di hashing delle password di Magento 2 e come ho risolto questo problema.","md","it",false,{},true,"/migrare-da-magento-2-a-woocommerce-la-sfida-delle-password",{"title":6,"description":184},"migrare-da-magento-2-a-woocommerce-la-sfida-delle-password",[194,195,196,197],"sviluppo","magento","wordpress","plugin",null,"aP_S8x6lK8ccb_kMckBZFI1u7HhNqT1OVB-bXwZIp7Q",1784577235851]