element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Enchanted Objects
  • Challenges & Projects
  • Design Challenges
  • Enchanted Objects
  • More
  • Cancel
Enchanted Objects
Blog About Security
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: crjeder
  • Date Created: 23 Mar 2015 9:23 PM Date Created
  • Views 447 views
  • Likes 3 likes
  • Comments 2 comments
  • smart_key_hooks
  • security
  • enchanted_objects
Related
Recommended

About Security

crjeder
crjeder
23 Mar 2015

Basic Security Principles

 

From the comments to my first post I've learned that there are different perception of security. Therefore I decided to explain when I call a system to be secure. In general security tries to reach following goals:

 

  • confidentiality
  • integrity
  • availability
  • and sometimes non repudiation

 

What does this mean? For short (longer explanation at Wikipedia):

Confidentiality means that I am able to keep the data secret. As important is integrity - make sure that nobody (else) is able to alter the data. But this is all of limited value if authorized persons can not access the data. Therefore we need to ensure availability. And non repudiation makes sure that we can proof who has sent us that data we are looking at.

One solution to all but availability is cryptography.

 

Cryptograpy

 

In information security a cryptosystem should honour Kerckhoffs's Principle which states:

A cryptosystem should be secure even if everything about the system, except the key, is public knowledge.

This even includes - under some of the attack models - some or all secret messages sent in the past (cf Known-plaintext attack) along with the corresponding encryption. This can even be taken further: the attacker is allowed to craft the messages to be encrypted (cf Chosen-plaintext attack). There are more attack models of which one is of general importance: Brute-force attack. Brute force is always leading to decryption and / or revelation the key. Therefore we have to choose key lengths such that an attacker needs an infeasible amount of resources to do so. A cryptosystem is broken if there exists an attack which performs better than brute force. Even cryptosystems which are broken can be practically secure if  within the time the message should be kept secret the most powerful adversary has a negligible probability of successfully mounting the best available attack.

 

Example:

I want to keep my weather forecast for tomorrow secret. I of course will share the forecast with my family members. The only others who are interested in my weather forecast are my neighbours - all others get more accurate forecast from other sources. So a encryption which takes a usual home computer one year to break with brute force is - for this scenario - practically secure. If I want to encrypt state secrets with the same crypto it most likely won't be considered to be secure.

 

Since in most scenarios adversaries are much more powerful than yourself cryptosystems are designed to be exponentially more difficult to break than to do the encryption. While a 128 bit key is only double the size of a 64 bit key, a brute force attack has to try every one of the 2^128 keys which is 2^64 times the workload as for the 64 bit key! So if do not feel secure enough anymore you double the key size which increases your encryption time by a factor of 2 and increase the time it takes an attacker by the factor of 2^64 ≈ 2*10^20 or 2 times ten billion times ten billion (a 2 followed by 20 zeros). This is the kind of advantage you want!

 

This also rules out a popular strategy by non-security folks: Security trough obscurity.

When taking about security you usually have at least one person asking "What if I do not tell them HOW I did the encryption? That makes the whole brut force thing absolutely impossible since nobody has the code!"

That, of course is not true. Code or hardware implementations can be reverse engineered or observed and with enough knowledge time and patience somebody will come up with the right solution. While this is a lot more complicated than just using an available implementation and start right away with brute forcing, it also makes YOR life much more complicated. I. e. you never know how much harder breaking your "crypto" is than en- / decoding and thus how much time you got until your secret is known. For proper cryptograpy it is just simple math as shown above.

 

That been said I do not get why Atmel puts its secure boot documentation under NDA.

  • Sign in to reply

Top Comments

  • clem57
    clem57 over 10 years ago in reply to Workshopshed +1
    I was at work and found the keys/passwords were XOR with the day/time of the password. The hard part was figuring the data/time from a 64 bit value!
  • clem57
    clem57 over 10 years ago in reply to Workshopshed

    I was at work and found the keys/passwords were XOR with the day/time of the password. The hard part was figuring the data/time from a 64 bit value!

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Workshopshed
    Workshopshed over 10 years ago

    I remember when I was a kid there was a cereal company who had a club for which you needed to send away to get membership. There were coded messages on the back of the packets. At the age of 8 I did a frequency count and confirmed it was probably a simple substitution cipher. 3 packets later and I had all but 2 letters decoded.

    I also had a situation at work where I knew that an XOR algorithm was being used to obscure some code. I used a Word macro and some plain text dictated over the phone to decrypt the source code.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube