As of August 2020 the site you are on (wiki.newae.com) is deprecated, and content is now at rtfm.newae.com.

Difference between revisions of "CW1173 ChipWhisperer-Lite"

From ChipWhisperer Wiki
Jump to: navigation, search
(Replaced content with "== Page Moved == See [https://rtfm.newae.com/Capture/ChipWhisperer-Lite/ NewAE RTFM Page]. The previous content on this wiki has been moved to the above link. See wiki hi...")
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
{{Warningbox|This page has been recently updated for the ChipWhisperer 5 release. The previous version can be found here: https://wiki.newae.com/V4:CW1173_ChipWhisperer-Lite.}}
+
== Page Moved ==
  
<span class="expandall">
+
See [https://rtfm.newae.com/Capture/ChipWhisperer-Lite/ NewAE RTFM Page]. The previous content on this wiki has been moved to the above link. See wiki history if you would like to view exact older versions of this page.
 
+
The ChipWhisperer-Lite Bare Board consists of two main parts: a multi-purpose power analysis capture instrument, and a target board. The target board is a standard microcontroller which you can implement algorithms onto. For example if you wish to evaluate an AES library, you can program that library into the target board and perform the power analysis.
+
 
+
[[File:cwlite_basic.png|image]]
+
 
+
== Quick-Start Guide ==
+
 
+
You can see a [http://www.youtube.com/watch?v=MJmkYqA-LeM&hd=1 Video] of the quickstart guide, which will take you through all the setup items discussed here:
+
 
+
[[File:cwlite_demo_video.png|link=http://www.youtube.com/watch?v=MJmkYqA-LeM&hd=1]]
+
 
+
== Connection Quick-Start ==
+
<ol>
+
<li>Follow the [[Installing ChipWhisperer]] instructions for the ChipWhisperer software and its prerequisites.</li>
+
<li>Connect ChipWhisperer-Lite, install USB Drivers:
+
<dl>
+
<dt>Windows:</dt>
+
<dd><ul>
+
<li>Plug micro-USB cable into ChipWhisperer-Lite</li>
+
<li>If the &quot;New Hardware Found&quot; wizard doesn't prompt you for drivers, go to the control panel and find the &quot;ChipWhisperer-Lite&quot; device, and select "Update Drivers".</li>
+
<li>You can find drivers in <code>c:\chipwhisperer\hardware\capture\chipwhisperer-lite\</code>. You will likely need to extract them from the <code>cwlite_usb_driver.zip</code> file. If so simply extract them somewhere (i.e. your desktop), and then point the new hardware found wizard to that location.</li></ul>
+
</dd>
+
<dt>Linux:</dt>
+
<dd><ul>
+
<li><p>Driver installation is not required, but if you do not update the 'udev' system, you will be unable to run ChipWhisperer-Capture as a regular user. To update the udev system, first make sure the ChipWhisperer-Lite is Make a file called <code>/etc/udev/rules.d/99-cwlite.rules</code> . The contents of this file should be:</p>
+
<pre># allow users to claim the device
+
SUBSYSTEM==&quot;usb&quot;, ATTRS{idVendor}==&quot;2b3e&quot;, ATTRS{idProduct}==&quot;ace2&quot;, MODE=&quot;0664&quot;, GROUP=&quot;plugdev&quot;</pre></li>
+
<li><p>Add your username to the plugdev group:</p>
+
<pre>$ sudo usermod -a -G plugdev YOUR-USERNAME</pre></li>
+
<li><p>And reset the udev system:</p>
+
<pre>$ sudo udevadm control --reload-rules</pre></li>
+
<li>Finally log out &amp; in again for the group change to take effect.</li>
+
<li>Connect the micro-USB cable</li></ul>
+
</dd>
+
<dt>MAC:</dt>
+
<dd><ul>
+
<li>No special installation required - must ensure you have installed libusb via homebrew (see instructions at [[MacOSX_Installation]]).</li></ul>
+
</dd></dl>
+
</li>
+
<li><p>To check for a successful installation, connect to the ChipWhisperer. This can be done from one of two ways:</p>
+
<blockquote><ul>
+
<li>Open up a terminal and run python. Next, run <code>import chipwhisperer as cw; scope = cw.scope()</code>.</li>
+
<li>Open Jupyter Notebook and open PA_Intro_1-Firmware_Build_Setup.ipynb. On the toolbar, click Cell>Run All. If the tutorial completes successfully, your installation should be good to go!</li></ul></blockquote>
+
 
+
For more information on starting ChipWhisperer, see: https://chipwhisperer.readthedocs.io/en/latest/starting.html</ol>
+
 
+
== Capture and Attack Quickstart ==
+
 
+
# See [[Tutorial_B5_Breaking_AES_(Straightforward)]]for details. Note the hardware setup is slightly different -- but you can skip to step 5.5.3, and should be able to pick up from there. Be sure to use the <code>ChipWhisperer-Lite: AES SimpleSerial on XMEGA</code> script instead of the one referenced in step 5.5.3.
+
 
+
== Important Bugs/Caveats ==
+
 
+
The following includes various things that might trip you up:
+
 
+
# If you save the project ''before'' running the capture, you can specify any directory. Traces will be copied to the appropriate location during capture.
+
# If you save the project ''after'' running the capture, you must save the project to the same directory that &quot;default-data-dir&quot; exists in. This is normally the folder from where you invoked the Python GUI.
+
# There are a few warnings/exceptions that come up (i.e. divide-by-zero). Generally just keep going and see if things are still working. A number of those are on the ''TODO'' list to fix but I didn't get around to it yet.
+
# The &quot;Total Ops&quot; window which checks for proper AES operation requires PyCrypto to be installed.
+
# By default the XMEGA device was programmed with a partial AES implementation only. This is done to avoid any crypto export issues. This does not affect your side-channel analysis, but be aware the returned value might not appear to be correct (since only the first couple rounds of AES occurred).
+
 
+
== Basic Usage Instructions ==
+
 
+
{{CollapsibleSection
+
|intro = === AVR Programmer ===
+
|content= CW1173_ChipWhisperer-Lite/AVR Programmer}}
+
 
+
{{CollapsibleSection
+
|intro = === XMEGA Programmer ===
+
|content= CW1173_ChipWhisperer-Lite/XMEGA Programmer}}
+
 
+
{{CollapsibleSection
+
|intro = === STM32F Programmer ===
+
|content= CW308T-STM32F/ChipWhisperer_Bootloader}}
+
 
+
{{CollapsibleSection
+
|intro = === Using Glitch Port ===
+
|content= CW1173_ChipWhisperer-Lite/Glitch Port}}
+
 
+
{{CollapsibleSection
+
|intro = === Using Measure Port ===
+
|content= CW1173_ChipWhisperer-Lite/Measure Port}}
+
 
+
{{CollapsibleSection
+
|intro = === 20-Pin Connector ===
+
|content= CW1173_ChipWhisperer-Lite/20-Pin Connector}}
+
 
+
{{CollapsibleSection
+
|intro = === 8-Pin SmartCard Connector ===
+
|content= CW1173_ChipWhisperer-Lite/8-Pin SmartCard Connector}}
+
 
+
{{CollapsibleSection
+
|intro = === Upgrading SAM3U Firmware ===
+
|content= CW1173_ChipWhisperer-Lite/Upgrading SAM3U Firmware}}
+
 
+
{{CollapsibleSection
+
|intro = === Breaking Target Section Apart ===
+
|content= CW1173_ChipWhisperer-Lite/Breaking Target Section Apart
+
}}
+
 
+
== Advanced Usage ==
+
 
+
=== Mounting Jumpers ===
+
 
+
Note the ChipWhisperer-Lite main board and target section contain a number of jumper options. By default these are not mounted, and solder jumper bridges on the PCB have been bridged to select the appropriate options when required. Some options are only solder jumpers, which to move the jumper requires a soldering iron to bridge or clear the appropriate connections.
+
 
+
The following lists jumpers on the ChipWhisperer-Lite / Target Section:
+
 
+
; Capture Section Jumpers
+
* JP4 is the "RESET" net for the SAM3U processor.
+
* JP2 causes the SAM3U processor flash memory to be erased. When the chip is erased a rom-resident bootloader takes over. See section XXXXX for bootloader details.
+
* JP5 selects the IO voltage for the FPGA bank which connects to the 20-pin target. By default SJ6 selects this to be 3.3V. It is not recommended to change this, as it is easy to damage the FPGA by feeding an out-of-range voltage in.
+
* SJ1 selects if the power supply comes from the Micro-USB connector (default) or an external 5V supply at the +5VIN pin.
+
; Target Section Jumpers:
+
* JP7 connects the "MEASURE" SMA to the XMEGA VCC Rail. Shorted by default with SJ4.
+
* JP6 connects the "GLITCH" SMA to the XMEGA VCC Rail. Shorted by default with SJ5.
+
* JP12 can be used to feed an external voltage into the XMEGA VCC Rail. By default SJ3 connects this to 3.3V.
+
* SJ2 selects if the 3.3V rail comes from the 20-pin IDC connector (i.e. ChipWhisperer-Lite board), or via an optional LDO and USB connector.
+
 
+
</span>
+
 
+
{{CollapsibleSection
+
|intro = === Schematic ===
+
[https://github.com/newaetech/chipwhisperer/blob/master/hardware/capture/chipwhisperer-lite/pcb/cw-lite-main.pdf Link to PDF]
+
 
+
(Expand for inline images of schematic)
+
|content= CW1173_ChipWhisperer-Lite/Schematic
+
}}
+
== Hardware ==
+
{{Template:Hardware}}
+
 
+
[[Category:Capture Hardware]]
+

Latest revision as of 11:47, 29 July 2020

Page Moved

See NewAE RTFM Page. The previous content on this wiki has been moved to the above link. See wiki history if you would like to view exact older versions of this page.