I am trying to encrypt my USB stick with AES 128/256 encryption. I am new to the game and need some advice, google has not been my friend so far.
All i would like to do is encrypt the whole USB stick so that i end up with one like this AES USB.
Any help is appreciated.
Here are your choices for encryption:
Hardware encryption - get an USB flash drive that has the encryption logic programmed into its firmware (like the one you linked to).
Pros: Works in any operating system, no software installation necessary.
Cons: This is a more expensive option.
Software encryption - either get a flash drive that comes with a software, or download and install software that will encrypt your drive.
Pros: Less expensive option, some of good software to do this is either free or low-cost.
Cons: The software is operating system specific, so if you need a cross-OS approach, then you will have to find a program that has versions for multiple operating systems. Also the software will either need to be installed on any computer you will stick the flash drive into (most probably requiring you to be an administrator on that computer), or hopefully it can have a portable version that can be run directly from the USB drive.
Most USB flash sticks manufacturers have hardware-encrypted sticks in their assortment - you can ask around and read some reviews and choose one to your liking.
For software programs - the easiest option for Windows is its built-in BitLocker program, it is available on most recent Windows versions.
For cross-platform - look at tools like VeraCrypt, GNU Privacy Guard and others (again do your research and pick the one you like).
Another viable option is just to put the files you want to restrict access to in a password-protected ZIP archive.
Hope this helps.
Related
I am a non technical person and trying hands on making devices. i have one stupid question. I want to know, is micro-controller development kit can program unlimited microcontrollers (programming will be same for all micro-controller) or we need separate micro controller development kit and separate microcontroller in every device?
You have to read the license for the tool when you buy it, some yes, some no. Often you dont use the developers kit to program the parts, you use a programming tool (which may or may not be part of the same kit) for production. Some tools will program different vendors parts or all the parts within a vendors product list, but in general that is not the case. depending on the device there are a lot of free tools (avrdude for example) that dont have restrictions, but it is vendor/chip specific as to what tool will work for the microcontroller in question.
Simply read the docs on the tool you are interested in to see what it does and doesnt support, read the license agreement to see if there is a limit on the number of devices per software license.
Each type of micro-controller will have its own development kit. That kit works with all the same or similar micro-controllers. But, you will need separate micro-controller for each device.
There are plenty of coffeemakers and washing machines with a microcontroller in them. And clearly the manufacturers of those don't buy microcontroller dev kits by the billions. That would be unaffordable.
I wonder is it possible to implement new features in existing bios, in other words is there some libraries (like sdk) of motherboard which give you chance to make easy your own bios?
What mean "supported motherboard" - is that include libraries for developing or just mean that you can download latest update if exist?
To be more specific i will like to make in bios feature to wake up my computer if it's off at specific time. My motherboard is asrock. Do i have chance for develop my own timer features, or just can wait for product developer and pray that they make those feature?
Generally, the answer is "no". Most motherboard manufacturers license the BIOS source code from Phoenix/AMI/Insyde, and then tailor it to their specific motherboard implementation. The BIOS gets compiled to a binary, it is loaded into the motherboard flash chip, and that's it.
To modify the BIOS, you would need access to the BIOS source code. The motherboard manufacturer is unlikely to give that to you (they are probably under NDA). You could license the original source code from the BIOS vendor, but that is quite expensive (typically tens of thousands of $$$). Also, the source code from the BIOS vendor will be missing any motherboard-specific customizations.
Now, with the introduction of newer UEFI-based BIOSes, they have gotten a lot more extensible and standardized between vendors. It is now possible to develop pre-boot applications that live in the flash chip alongside the BIOS. However, the timer feature you are looking to implement is rather low-level, so this does not help you.
I need to create a simple application that is multi-platform that will send data over serial connections without much fuss for me or end users. The sole purpose is to be able to read and write tables of data to an Arduino over a USB interface (that presents itself as a serial interface).
I have some experience with python, perl, and php for what it's worth.
Thanks,
Luke
As the Languages you noted are all interpreted you need an Interpreter on the Platforms. If you don't dare installing a pee-family interpreter on a windows machine which is the most difficult platform i think then you can use it.
If you want real multi-platform you should consider using a compiled Language like C, which you compile for the different versions, or use Java and run it on top of the JRE which is available on most platforms.
I'm going to create a Java program that allows "locking" a USB drive by making it's files accessible only with a password. Similar software that does this is USB safeguard.
Here is what I am thinking of doing:
Store all files into a single archive on the USB.
Encrypt the archive using AES or
blowfish
Hide the archive.
The problem is, how can I "unlock" the USB? What approach can I take here? Here is what I have thought of:
Ramdisk: It is very hard, if not impossible, to load a Ramdisk from an encrypted arhive. While it may be plausible in c++, I think it may be much harder in Java and might involve messing with the system classes, which would kill the compatibility of the software and defeat the whole purpose of using Java.
Loading the unencrypted archive onto the USB - Nobody likes waiting 10 minutes just to view a file on a USB. Copying all the files might take some time. Also, what about free space on the USB?
Loading unencrypted archive onto harddrive - While being very unsecure and error-prone, this looks like the only possible way to get it done.
Creating a custom file browser allowing the user to browse the archive - Do you use winrar to browse your files? Would you like doing it? No. Creating a custom file browser will take alot of time to create, and again, is an error-prone and user-unfriendly approach.
I can't think of any other way of doing this. Can anyone think of a better way? Note that this is going to be free and open-source software.
TrueCrypt is Free Open-Source software for storing encrypted files on a storage device (i.e. USB drive). It runs on Windows, Linux, and MacOS. TrueCrypt even allows hidden volumes. I would start with their source code, and proceed from there.
Our company is using some software that ONLY accepts input from an "Imaging Device" i.e. a TWAIN device (e.g. scanner).
The problem is that we are receiving our files digitally, so using an actual scanner would require us to print, scan, and shred documents that we already have on the computer, but not in the software.
I was curious if anybody has any idea of how we might be able to work around this problem in the meantime. My first thought was to find some way to trick the program into thinking we're using a scanner, via some new 'imaging device' that would just read in the file, and spit it out to the software, but I don't even know where to begin with that.
We put in a feature request, seeing as how this problem should obviously be addressed in the software itself, but the company is notorious for lagging pretty hard when it comes to updates.
The system used by scanners is called TWAIN, so you'd be looking for some sort of virtual twain driver.
A quick google search will produce several hits, I don't have any experience with the software myself so can't advise any further.
Two such providers I found via experts exchange:
http://www.twaintools.de
http://www.scanpoint-usa.com
OK, months late... but in case you are interested, I have a TWAIN driver framework/toolkit that might let you build this fairly easily, depending on just what your scanning app expects, and how hard it is to read images from your digital documents. It's a Microsoft Visual C++ project. No charge but you'd need our permission to redistribute a driver based on it: GenDS
The TWAIN Working Group also has a sample/skeleton driver, I think it's straight C - and used to have some rather bad bugs (Why I wrote mine ;-) but, it might have got better.
Look for the "sample data source and application" on their download page.
And of course I have a 'commercial' version of GenDS that I use to write TWAIN drivers on contract.