d2jsp
Log InRegister
d2jsp Forums > Off-Topic > Computers & IT > Abducts Electronics/project/development Thread
Prev1111213141526Next
Add Reply New Topic New Poll
Member
Posts: 13,425
Joined: Sep 29 2007
Gold: 0.00
Warn: 20%
Jun 12 2014 12:22pm
With all the recent break ins over the net, ***, AOL, myanimelist, mangatrader, mangaupload, anidb, and a few others, I decided to take the leap into and install a secure offline password manager. This enables me to have a unique easy to access password for each service that requires a password which consists of any amount of characters (default 20) with a random charset of your defining (default a-z A-Z 0-9, but includes symbols, brackets, spaces, minus, underscore, and alt symbols).

There are quite a few out there but three really stood out. Onepass, Passwordbox, and Keepass. OnePass and PasswordBox both are closed source but have had third party companies do security audits on their software within the past few years. Both of these applications are fully cross platform and also include mobile clients. OonePass and PasswordBox also allow you to store your encrypted password database on their servers so that all you would need is your master password and username to access your passwords from any computer or mobile device. These two applications also include browser addons that automatically fill in websites with your details from your encrypted password database. The down side is you have to pay for their software although for 10 dollars for a lifetime premium account I would say it is not that bad. For that small sum you get a safe and secure easy way to store your passwords over all platforms.
Member
Posts: 13,425
Joined: Sep 29 2007
Gold: 0.00
Warn: 20%
Jun 12 2014 12:23pm

Keepass on the other hand is absolutely free and cross platform with a bunch of open sourced projects for mobile and desktop platforms (android, ios, linux, mac, windows). It is also a open source project which means the source code can be audited by any capable individual and most of all the database is stored offline on your computer. The database is encrypted with Rijndael (AES) and you get to set a custom number of rounds the database must complete before being decrypted or encrypted. A round is simply how many times the data is passed through the encryption before coming out as your data. By default it is 6000 rounds, but it has a button that calculates how many rounds you can do in 1 second time, which on my processor was about 730,000 or something. From there I multiplied it by five so that it takes 5 seconds to decrypt or encrypt my database. This is defiantly not a long time to wait to access your data, and adding 5 seconds to per brute force attempt will prevent many attackers from gaining your master pass phrase to access your database. As you are creating your database you have various pass phrase options to unlock your database. The two I recommend used together are the master pass phrase and the key options. The key option is just like a pgp or ssh auth key where it generates a 1024 bit unique key that if not present when decrypting will cause the decryption to fail. The master pass phrase option is just a simple password that unlocks the database; I use a 25 length pass phrase which consists of a simple sentence with numbers that I will remember. It is long enough that brute forcing will take ages on top of the 5 seconds per guess that it is not feasibly possible to brute force and dictionary attacks are practically impossible.

Once you have a database setup you can finally start using the password software to its fullest. I use the KeeFox 1.4.2 firefox addon which is a plugin for KeePass that allows KeePass to interface with firefox. This gives you access to unlock your database from within firefox as well as generate new passwords and save POST strings that firefox sends to the webserver so that it may autofill in your passwords and usernames at a later time. KeePass also has a feature called autotype which allows you to specify a window name and when you press a hotkey it will search your password database for the window name and autotype any matching usernames and passwords into the window. This means you can also have very secure passwords for video games and other software the require a password. As for moving your database across multiple platforms since there is no centeral server you will have to find your own. The software has built in http and ftp file moving functions where you can store your database on a remote server or even a network share. This means you can use dropbox or even sftp (ssh file transfer protocol) to move your files to a remote server so that all your devices may access it. Also since KeePass is an open sourced project so most of the other clients for other platforms are also open sourced such as Keepass2android the android client.

Here are some photos of the application:

http://i.imgur.com/PqZMFtq.png
http://i.imgur.com/Ual502D.png

For what its worth I should of made the switch a while ago. Not only does this allow me to forget about my passwords, but it also allows me to secure my accounts so that if one gets compromised no other account will because none will share the same password.
Member
Posts: 13,425
Joined: Sep 29 2007
Gold: 0.00
Warn: 20%
Jun 12 2014 12:54pm
I had to move the crystal on my usb 2.0 hub since it was located on the bottom of the PCB which would of shorted out the pcb below it once I placed it in the project box.

So I desoldered it and moved it to the other side of the pcb. While doing so I accidentally lifted the traces although since they were pretty wide/thick I managed to solder the crystal to them and epoxy it into place so that the traces wouldn't move and become more damaged.

There is virtually zero play in the crystal now and is solid as a rock. God I love epoxy. I don't know what I would do without it when modding electronics.

http://imgur.com/a/3U73j
Member
Posts: 25,777
Joined: Oct 7 2005
Gold: 9,780.00
Jun 12 2014 01:56pm
Quote (AbDuCt @ Jun 12 2014 11:54am)
I had to move the crystal on my usb 2.0 hub since it was located on the bottom of the PCB which would of shorted out the pcb below it once I placed it in the project box.

So I desoldered it and moved it to the other side of the pcb. While doing so I accidentally lifted the traces although since they were pretty wide/thick I managed to solder the crystal to them and epoxy it into place so that the traces wouldn't move and become more damaged.

There is virtually zero play in the crystal now and is solid as a rock. God I love epoxy. I don't know what I would do without it when modding electronics.

http://imgur.com/a/3U73j


Damn that's one crusty PCB.
Member
Posts: 13,425
Joined: Sep 29 2007
Gold: 0.00
Warn: 20%
Jun 12 2014 02:28pm
Quote (Halfdead14 @ Jun 12 2014 03:56pm)
Damn that's one crusty PCB.


Tell me about it, but that's what you get when buying china shit. Once I desolder all the usb leads I am going to rub it down with some isopropol and attempt to clean it up with out destroying the solder mask.
Member
Posts: 104,692
Joined: Apr 25 2006
Gold: 10,485.00
Jun 15 2014 02:25pm

Need more of those sexi breadboard projects :)
Member
Posts: 13,425
Joined: Sep 29 2007
Gold: 0.00
Warn: 20%
Jun 15 2014 02:27pm
Quote (Ghot @ Jun 15 2014 04:25pm)
Need more of those sexi breadboard projects  :)


Heh lacking funds to complete some of them. I still have that wireless controller setup on a breadboard, but I need 20$ to buy a logic analyzer so I can figure out whats happening with it. I moved it from one room to another and since then it hasn't wanted to work, so something has come lose.

I'm actually debating writing a small operating system for fun though. Will most likely put the project up on github while I work on it.
Member
Posts: 13,425
Joined: Sep 29 2007
Gold: 0.00
Warn: 20%
Jun 15 2014 04:57pm
Quote (AbDuCt @ Jun 15 2014 04:27pm)
Heh lacking funds to complete some of them. I still have that wireless controller setup on a breadboard, but I need 20$ to buy a logic analyzer so I can figure out whats happening with it. I moved it from one room to another and since then it hasn't wanted to work, so something has come lose.

I'm actually debating writing a small operating system for fun though. Will most likely put the project up on github while I work on it.


Decided to start prepping for the operating system for laughs. Compiling my i686-elf toolchain at the moment which will compile my bootloader and kernel.

Software currently being compile:
  • binutils-2.24
  • gcc-4.9.0
  • gmp-6.0.0a
  • mpfr-3.1.2
  • mpc-1.0.2

Most of which (the last 3 packages) are for dealing with math/integers/floating point numbers. Still in the process of compiling gcc, I expect I wont be done any time soon my this dual core home server.

Once I'm done I'll provide my bash history so others can install the toolchain if they wish, although I doubt any of you will be able to contribute to the project, and since a precompiled master binary will be most likely provided there is no need to install it to look at how its working at its current state.
Member
Posts: 16,450
Joined: Mar 25 2012
Gold: 158.71
Jun 15 2014 05:03pm
Quote (AbDuCt @ Jun 15 2014 06:57pm)
Decided to start prepping for the operating system for laughs. Compiling my i686-elf toolchain at the moment which will compile my bootloader and kernel.

Software currently being compile:
  • binutils-2.24
  • gcc-4.9.0
  • gmp-6.0.0a
  • mpfr-3.1.2
  • mpc-1.0.2

Most of which (the last 3 packages) are for dealing with math/integers/floating point numbers. Still in the process of compiling gcc, I expect I wont be done any time soon my this dual core home server.

Once I'm done I'll provide my bash history so others can install the toolchain if they wish, although I doubt any of you will be able to contribute to the project, and since a precompiled master binary will be most likely provided there is no need to install it to look at how its working at its current state.


make the kernel say "welcome to inside my cock" when it loads <3
Member
Posts: 13,425
Joined: Sep 29 2007
Gold: 0.00
Warn: 20%
Jun 15 2014 05:20pm
First we will be compiling our i686-elf toolchain used for compiling our bootloader as well as our kernel. We will grab the latest versions of binutils as wel as gcc and proceed to compile them on our Linux machines. We will be building this for our current user only ($HOME/opt/cross), but if you want the cross toolchain to be globally available you may install into the (/usr/local/cross) directory.

Some flags that appear in the configuring that should be explained:
--disable-nls: This disables native language support which is optional but reduces compile time
--without-headers: This tells the make file not to compile and include any of the standard C libraries for this target
--enable-languages: This tells the make file not to compile all the other language subsets it finds except for the ones listed (c and c++)

Code
#create a directory to hold all your sources
cd ~
mkdir i686-elf
cd i686-elf

#download all your sources, these are the latest as of June, 15, 2014
wget http://ftp.gnu.org/gnu/binutils/binutils-2.24.tar.gz
wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.9.0/gcc-4.9.0.tar.gz
wget https://ftp.gnu.org/gnu/gmp/gmp-6.0.0a.tar.xz
wget http://www.mpfr.org/mpfr-current/mpfr-3.1.2.tar.gz
wget ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz
tar -zxvf gcc-4.9.0.tar.gz
tar -zxvf binutils-2.24.tar.gz
tar -xvf gmp-6.0.0a.tar.xz
tar -zxvf mpfr-3.1.2.tar.gz
tar -zxvf mpc-1.0.2.tar.gz

#move, configure, build, and install the binutils source
cd binutils-2.24
./configure --target=i686-elf --prefix="$HOME/opt/cross" --disable-nls --disable-werror
make && make install

#move the related gcc sources into the gcc folder and then move, configure, make, and install gcc
cd ..
mv gmp-6.0.0 gcc-4.9.0/gmp
mv mpfr-3.1.2 gcc-4.9.0/mpfr
mv mpc-1.0.2 gcc-4.9.0/mpc
cd gcc-4.9.0
./configure --target=i686-elf --prefix="$HOME/opt/cross" --disable-nls --enable-languages=c,c++ --without-headers
make all-gcc
make all-target-libgcc
make install-gcc
make install-target-libgcc

#check if gcc is installed correctly and functioning
~/opt/cross/bin/i686-elf-gcc --version
#i686-elf-gcc (GCC) 4.9.0

#update your path variable (might want to update your .bashrc or else you will be fixing your path every session)
export PATH="$HOME/opt/cross/bin:$PATH"
Go Back To Computers & IT Topic List
Prev1111213141526Next
Add Reply New Topic New Poll