Mozilla Messaging : Thunderbird 3.1 with IMAP

Mozilla Thunderbird Mail Client

Mozilla is a global community of people creating a better Internet. As a wholly owned subsidiary of Mozilla, Mozilla Messaging organizes the development and marketing of email and messaging products encouraging choice, innovation, and opportunity in messaging on the Internet. Thunderbird, as a messaging system, is uniquely positioned as the tool that users can use to integrate as many of their communications as they want.

By combining an open architecture, a powerful extensibility and customization framework, and a person-centric perspective on communications, Thunderbird is a powerful yet enjoyable tool to help individuals manage their online interactions, whether that’s email, instant messaging, social networking messages, or other types of message.

Today, I installed version 3.1 of  Thunderbird on my PC running Vista.

The profiles are saved to C:/Users/username/AppData/Roaming/Thunderbird/..

To import the messages from my Windows Mail Client, I installed the ImportExportTools from Kosmos Website. This is done with the menu Tools >> AddOns in the Thunderbird Client. I added a folder “WindowsMail” under “Local Folders” with three subfolders Inbox, SentItems and DeletedItems. After installing the ImportExportTools, a new Menu Import/Export appears when right clicking on a folder tab. All .eml files in the Windows Mail Folder are imported, even with the option of including subfolders.

The Windows Mail messages are located at C:/Users/username/AppData/Local/Microsoft/Windows Mail/Local Folders/…

Finally I installed the freeware MozBackUp 1.4.10 to MozBackup, a simple utility for creating backups of Mozilla Firefox, Mozilla Thunderbird, Mozilla Sunbird, Flock, SeaMonkey, Mozilla Suite, Spicebird, Songbird and Netscape profiles. It allows you to backup and restore bookmarks, mail, contacts, history, extensions, passwords, cache etc.

I configured the Thunderbird Client to use IMAP (Internet Message Access Protocol ) for incoming messages. The current version, IMAP 4 revision 1 (IMAP4rev1), is defined by RFC 3501. IMAP supports both on-line and off-line modes of operation. E-mail clients using IMAP generally leave messages on the server until the user explicitly deletes them. This and other characteristics of IMAP operation allow multiple clients to manage the same mailbox.

Web-Sniffer : View HTTP Requests and Responses

Last update : October 21, 2016

HTTP Response Headers are just lines of text sent from the server to the browser before the page content. They are terminated with a blank line, after which the page content is deemed to begin. HTTP Requests are lines of text sent from the browser  to the server.

A very useful tool to check HTTP Request and Response Headers is available at the web-sniffer.net website.

A typical output of a HTTP Request Header by the web-sniffer is shown below :

HTTP Request Header

Connect to 80.90.45.105 on port 80 ... ok

GET / HTTP/1.1[CRLF]
Host: www.saraproft.net[CRLF]
Connection: close[CRLF]
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; 
rv:1.9.2.6) Gecko/20100625 Firefox/3.6.6 GTB7.1 
( .NET CLR 3.5.30729; .NET4.0C)[CRLF]
Accept-Charset: ISO-8859-1,UTF-8;q=0.7,*;q=0.7[CRLF]
Cache-Control: no[CRLF]
Accept-Language: de,en;q=0.7,en-us;q=0.3[CRLF]
Referer: http://web-sniffer.net/[CRLF]
[CRLF]

HTTP Headers are strings terminated by a CR (carriage return) and LF (Line feed) character (‘rn’ string). The order of header lines withing the HTTP header has no significance. Any header fields which are not understood should be ignored. A CRLF string after the last header is followed by the content part of the webpage.

Web-Sniffer is also available as free desktop app for Windows and Mac (version 1.0.0 Beta, Build 26, released on June 23, 2013).

Web-Sniffer App on Mac OS X El Capitan

Web-Sniffer App on Mac OS X El Capitan

ECLIPSE and TOMCAT (web applications)

Apache Tomcat & Eclipse Platform make a great Web development platform. Tutorials about this development environment are available on the following websites:

I use the Tomcat version 5.5.23 as localhost because this version is available on my hosted website provided by my ISP Visual Online. My Eclipse version is Galileo (3.5.2). The Java SDK is 1.6.

Web applications are deployed on the Tomcat server with a WAR file (which stands for “web application archive” ) A WAR file is a ZIP file used to distribute a collection of JavaServer Pages, servlets, Java classes, XML files, tag libraries and static Web pages that together constitute the Web application.

There are special files and directories within a WAR file.

  • The /WEB-INF/classes directory contains the .class files (servlets, …)
  • The /WEB-INF/lib directory contains the .jar files with the Java librairies
  • The /WEB-INF directory contains a file named web.xml which defines the structure of the web application

The main elements of the web.xml file are shown below :

<?xml version=”1.0″ encoding=”UTF-8″?>
<web-app id=”WebApp_ID” version=”2.4″ xmlns=”http://java.sun.com/xml/ns/j2ee” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd”>

<display-name>MyExampleWebProject</display-name>
<description>Describe What the application is doing and add comments</description>

<servlet>

<servlet-name>MyServlet</servlet-name>
<servlet-class>saraproft.com.servlet.FirstApp</servlet-class>
<description>Une application très simple</description>

<init-param>
<param-name>size</param-name>
<param-value>123</param-value>
</init-param>

<load-on-startup>1</load-on-startup>

</servlet>

<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>echo</url-pattern>
</servlet-mapping>

</web-app>

The elements of a web.xml file are :

  • the name of the application : <display name>
  • the name, class and parameters of the servlet : <servlet>
  • the mapping of the servlet : <servlet-mapping>
  • context parameters : <context-param>
  • session parameters : <session-config>
  • list of index files : <welcome-file-list>
  • MIME mapping : <mime-mapping>
  • other parameters referring to security, errors, filters, …

The other files (html, jsp, iamges, …) are stored in the root or in folders located in the root of the WAR file. They can’t be included in the WEB-INF directory.

Cellspark animator

Cellspark version 2

The CellSpark animation editor creates compact flash-like vector graphics animations for nearly all Java enabled phones.

Developped by Colin Mummery a few years ago, this tool allows to create presentations, screen savers and more for different handsets.

Runnable midlets can be created for Midp 1 and Midp 2 devices. In 2005, during the Luxembourg Presidency of the Council of the European Union from 1st January till 30th June 2005, I used the licensed version of Cellspark to create a multimedia show about the member states of the European Union as a Midlet for the Nokia handset 6680.

Today, a reinstalled Cellspark (a java program) on my new labtop running Vista and Java 6 without any problems. The program is still very useful, userfriendly and fascinating.

BlackBerry .cod and .alx files

Last update : August 1, 2012

jar/jad 2 cod/alx

BlackBerry uses .cod and .alx files to deploy Java applications from the PC desktop (BB Desktop Manager) to a BlackBerry device. These files are generated automatically by the BlackBerry JDE or by the Eclipse BlackBerry plugin.

.alx is an XML-based BlackBerry application descriptor which can be generated by hand. An example for the Java application FirstApp.cod is shown below :

<loader version="1.0">
    <application id="FirstApp">
        <name >
        </name>
        <description >
        </description>
        <version >
        </version>
        <vendor >
        </vendor>
        <copyright >
            Copyright (c) 2010
        </copyright>
        <fileset Java="1.5">
            <directory >
                MyFolder
            </directory>
            <files >
                FirstApp.cod
            </files>
        </fileset>
    </application>
</loader>

To download a BlackBerry application over the air to a BlackBerry device, a standard .jad file is used to describe the application. The .jad file is selected from the browser to load the .cod file. If the BlackBerry service to download standard MIDlets is enabled,  the Mobile Data Service feature of the BES provides a built-in transcoder that converts .jar files into .cod files.

Brandon Dante Swift developped an offline conversion tool from .jar/.jad files to .cod/.alx files (JAR2ALX). The free version 1.5.1 is available at the website Brandon Swift Creations. The pro version 1.5 is now also available free of charge. Brandon developed another useful tool that makes capturing your Blackberry’s screen to an avi video as easy as a click of a button (PC program BeVi with usb connection). Donations are appreciated for all three programs.

BlackBerry Desktop Manager

Last update :  December 7, 2014

Today I installed the BlackBerry Desktop Manager Version 5.0.1.37 (march 10, 2010).

This dashboard offers the following functions:

BlackBerry Desktop Manager

  • Media Sync (synchronise iTunes or Windows Media Player music with BlackBerry device)
  • Application Loader (add or remove applications, update software)
  • Backup and Restore (backup or restore device data)
  • Device Switch Wizard (transfer data from one device to another : BlackBerry, Palm or Windows mobile)
  • Synchronize (synchronize email and organizer data)
  • IP modem (set up BlackBerry device as a wireless modem for internet access)

The desktop manager works with my three different BlackBerry devices : 7100v, 8100 et 9000. It does not support my new Blackberry Z10.

The firmware and microedition versions are shown below :

7100v

  • BlackBerry 7100v
  • v 4.0.2.35
  • Platform 1.8.0.138
  • CLDC-1.1
  • MIDP-2.0
  • JTW 1.0
  • Media 1.1
  • PIM 1.0
  • 2005

8100

  • BlackBerry 8100
  • v 4.2.1.109
  • Platform 2.3.0.85
  • CLDC-1.1
  • MIDP-2.0
  • JTW 1.0
  • Media 1.1
  • Pim 1.0
  • File 1.0
  • 2007

9000

  • BlackBerry 9000
  • v 4.6.0.216
  • Platform 4.0.0.183
  • Branding 1.0.194.166
  • CLDC-1.1
  • MIDP-2.0
  • JTWI 1.0
  • Media 1.1
  • PIM 1.0
  • File 1.0
  • Bluetooth 1.1
  • Location 1.0.1
  • Security and Trust 1.0
  • WLAN 2.4.0.71
  • 2008

My desktop manager was updated in 2011 to version 6.1.0.35 (Bundle 34), released on June 7, 2011, in 2012 to version 7.0.0.59 (Bundle 60), released on May 17, 2012 and recently to version 7.1.0.41 (Bundle 42), released on March 26, 2013.

Screenshot of the Blackberry update window

Screenshot of the Blackberry update window

With my Blackberry Z10, the Blackberry Desktop Manager was replaced by Blackberry Link, the latest version 1.2.3.56 was released on July 3, 2014.

WLAN, WiFi, WEP, WPA, WPA2, TKIP, PSK, AES

Logo de Wi-Fi Alliance

La norme IEEE 802.11 (ISO/IEC 8802-11) est un standard international décrivant les caractéristiques d’un réseau local sans fil (WLAN), appelé encore Wi-Fi ou WiFi, comme contraction de Wireless Fidelity.

Pour remédier aux problèmes de confidentialité des échanges sur les réseaux sans fils, le standard 802.11 intègre un mécanisme simple de chiffrement des données, il s’agit du WEP (wired equivalent privacy).

Le WEP est un protocole chargé du chiffrement des trames 802.11 utilisant l’algorithme symétrique RC4 avec des clés d’une longueur de 64 bits ou 128 bits.

Comme le WEP n’est pas suffisant pour garantir une réelle confidentialité des données, il convient d’utiliser le cryptage WPA ou WPA2 pour obtenir un niveau de sécurité supérieur.

WPA (WiFi protected Access) est une solution de sécurisation de réseau WiFi proposé par la WiFi Alliance, afin de combler les lacunes du WEP. Le WPA est une version « allégée » du protocole 802.11i, reposant sur des protocoles d’authentification et un algorithme de cryptage robuste : TKIP (Temporary Key Integrity Protocol). Le protocole TKIP permet la génération aléatoire de clés et offre la possibilité de modifier la clé de chiffrement plusieurs fois par secondes, pour plus de sécurité.

Le fonctionnement de WPA repose sur la mise en oeuvre d’un serveur d’authentification permettant d’identifier les utilisateurs sur le réseau et de définir leurs droits d’accès. Pour les petits réseaux, une version restreinte appelée WPA-PSK (Pre-shared Key), est mis en oeuvre déployant une même clé de chiffrement pour l’ensemble des équipements.

La Wi-Fi Alliance a créé en 2004 une nouvelle certification, baptisée WPA2, pour les matériels supportant le standard 802.11i. Contrairement au WPA, le WPA2 permet de sécuriser aussi bien les réseaux sans fil en mode infrastructure que les réseaux en mode ad hoc. Il s’appuie sur l’algorithme de chiffrement TKIP, comme le WPA, mais supporte également l’AES (Advanced Encryption Standard), beaucoup plus sûr.

Mise à jour de la firmware PSP 1004

last update : 3rd October 2010

Sony PSP

Aujourd’hui j’ai mis à jour la firmware de ma playstation portable (PSP) à la version 6.20. La procédure est la suivante:

  • Téléchargement du nouveau firmware : EBOOT.PBP
  • Connexion de la PSP au PC à l’aide du câble USB
  • Sélection du paramètre > [Connexion USB] dans le menu d’accueil
  • Appui sur la touche X pour activer le mode USB. Le PC reconnaît la PSP en tant que clé USB/disque dur externe
  • Ouverture du disque et installation du fichier EBOOT.PBP dans le dossier PSP/GAME/UPDATE
  • Déconnexion de la PSP du PC
  • Branchement du chargeur à la PSP
  • Appui sur la touche Cercle pour sortir du mode USB
  • Accès à Jeu > [Memory Stick]
  • Appui sur la touche Croix
  • Choix de la mise à jour puis validation avec la touche Croix
  • Suivi des instructions à l’écran pour terminer l’installation
  • Suppression du fichier EBOOT.PBP après la mise à jour

Note: si la batterie est faible, la mise à jour ne démarre pas, même si la console se trouve sur l’alimentation externe.

La mise à jour à la version 6.31 a été effectuée le 3 octobre 2010 avec succès par Internet sans passer par un PC.

PayPal Sandbox to test Express Checkout

The PayPal Sandbox allows developers to test the integration of their PayPal payment solution before submitting transactions to the live PayPal environment. The Sandbox is a duplicate of the live PayPal site, except that no real money changes hands.

The PayPal sandbox offers following functions:

  • Test Accounts : create preconfigured or  manual buyer and seller accounts. Virtual credit card numbers and bank accounts are generated automatically in the case of preconfigured accounts. In the case of manual account creation, a credit card number generator is needed to obtain valid virtual card numbers.  The expiration date can be freely chosen, the CVV is always 000.
  • Test Email : access emails sent to all the test accounts.
  • API Credentials : manage API credentials for the test accounts. The credentials are the API username and password and a digital signature.
  • Test Tools : Instant Payment Notification (IPN) simulator to initiate transactions to test the  (IPN) feature.
  • Additional resources : documentation, support, forums, developer network.

A Business account is needed to implement the PayPal Express Checkout gateway. The configuration is done in the profile menu. The name of the merchant and his secure merchant account ID and the following profile informations are managed in this section:

Account Information :
* Email, * Street Address, * Password, * Notifications, * Language Preference, * Time Zone, * Manage User, * API Access, * Business Information, * Identification Preference, * Merchant Fees

Financial Information :
# Credit/Debit Cards, # Bank Accounts, # Currency Balances, # Gifts and Discounts, # Recurring payments dashboard, # My preapproved payments

Selling Preferences :

  • Regional Tax : to set up domestic or international sales tax rates (handled in ZenCart for my store)
  • Shipping Calculations : to set up costs for shipping (handled in ZenCart for my store)
  • My Saved Buttons : to create new buttons or to change characteristics of existing buttons (not needed for my store)
  • Payment Receiving Preferences : to set up payment parameters (configuration needed for my store)
  • Instant Payment Notification Preferences : to activate IPN (IPN not handled by my store for Express Checkout)
  • Reputation : to cap seller reputation number (no for my store)
  • Customer Service Message : message displayed to customers before they open a dispute in the Resolution Center (edition needed for my store)
  • Website Payment Preferences : to set up payment preferences (configuration needed for my store)
  • Encrypted Payment Settings : to use certificates and encryption (analysis needed for my store)
  • Custom Payment Pages : to customize payment page (customization needed for my store)
  • Invoice Templates : to use templates for invoices (analysis needed for my store)
  • Language Encoding : to select the language to use on the website (english and utf-8 for my store)

PayPal : Express Checkout or Website Payments Standard ?

PayPal Standard

Customers checking out with PayPal Website Payments Standard (formerly referred to as “PayPal IPN”) will complete the order in the store and once coming to the choice of the payment method, they can select PayPal . There will be a large PayPal button for them to click, they are directed to a page that allows them to log into their PayPal account or to pay by credit card without having to sign up for a PayPal account. After the payment completion, customers are returned to the store.

Website Payments Standard is the fastest way to set up online payment on a website to accept credit cards, debit cards, bank transfers, and PayPal. The integration is easy (HTML based). In the case of ZenCart, if there is any problem in PayPal’s ability to communicate to the store server,  the order will not be passed to the store.

PayPal Express

PayPal Express Checkout gives the customer two options:  They can jump over to the PayPal site to login to their account before completing checkout on the store (which allows them to select their address information there and never have to re-type their address details on the store site, thus the “express” part of the transaction) and then choosing shipping choices and discounts/coupons etc before completing the order and confirm the payment.

The other possibility is to go to the PayPal site to login to their account after making shipping/payment/coupon selections on the store site (and creating an account on the store and typing their address info on the store), much like they do with PayPal Website Payments Standard.

One important benefit is that Express Checkout does not rely entirely on the IPN communications to the store in order to release the order. Instead, it stores the order immediately when payment is completed. It doesn’t have to rely on the PayPal server to talk to the store server in order to save the order. IPN updates are still useful in case of refunds or adjustments to the order and  are reflected in the store’s order history.

The integration of PayPal Express Checkout is more complex and is based on API’s.