Today's Question:  What does your personal desk look like?        GIVE A SHOUT

 PROGRAMMING


  Different types of keystore in Java -- BKS

BKS is a keystore format provided by the popular third party Java cryptographic library provider -- BouncyCastle. It is a keystore similar to the JKS provided by Oracle JDK. Before starting to use BKS, the BouncyCastle provider has to be downloaded and installed. To download the provider, please go to BouncyCastle download page. The provider can be installed by adding an entry in the java.security file.security.provider.N=org.bouncycastle.jce.provider.BouncyCastleProviderN means the provider index in the provider list.Creating BKS keystoreTo create a BKS keystore, you just need to create ...

31,650 0       JAVA KEYSTORE BOUNCYCASTLE BKS


  Custom C++ exception class creation

In standard C++, we can use try catch to catch and exception when something goes wrong. These are some built in exception support in C++. By including the #include , we can now catch exceptions in C++ programs. This actually helps us on debugging our code and reduce the maintenance work.However sometimes if we want to create our own custom exception class. What should we do?We should include the #include line and then extend the exception class and implement some methods as you like. The general format is :#include using namespace std;class MyException:public exception{public:  &nbs...

31,543 2       C++ IMPLEMENTATION STD EXCEPTION CUSTOM EXCEPTION


  How does Base64 work

Base64 is a data encoding scheme used in safe data transfer such as HTTP and its extensions. Base64 encoding can conver arbitrary group of bytes into a sequence of readable ASCII characters. These converted characters can safely put in a HTTP header without causing any problem while the peers process the HTTP header.Base64 encoding was invented as part of the MIME content transfer encoding. It is similar to other encoding schemes such as Uuencode and BinHex but with higher efficiency.8 bit to 6 bitBase64 will divide the bytes into groups of 6 bits. Every 6 bits will map to a characte...

30,798 2       ALGORITHM BASE64


  Using MySQL Connector/C++ with Visual Studio 2010

MySQL Connector/C++ is one of the latest connectors for MySQL, developed by Sun Microsystems. The MySQL connector for C++ provides an object-oriented application programming interface (API) and a database driver for connecting C++ applications to the MySQL Server.When we want to build a database application with C++ using Visual Studio 2010, we may use the MySQL Connector/C++, but sometimes we may encounter different errors, either compile or runtime error. After tried many times, I finally made my C++ program successfully connect to MySQL database with Visual Studio 2010. Here I share what I ...

30,627 1       C++ VS2010 MYSQL CONNECTOR VISUAL STUDIO 2010


  10 Reasons Why Visual Basic is Better Than C#

Visual Basic is a better programming language than Visual C#. Who says so? This article! Here are 10 reasons why you should always choose VB over C#. 1 – “Rose is a rose is a rose is a rose” This is a quotation from Gertrude Stein’s 1922 play Geography and Plays. However, the poetry wouldn’t work in C#, because – unforgivably – it’s a cASe-SeNSitIvE language. This is madness! Before I start ranting, let me just acknowledge that case-sensitivity confers one (and only one) advantage – it makes it easier to name private and public prope...

30,625 0       COMPARISON C# ADVANTAGE VISUAL BASCI


  Java Cipher encryption/decryption example

In Java, Cipher is the API for doing data encryption/decryption. Many cryptographic algorithms such as AES, DES, RC4 etc can be specified when creating Cipher instance. The Cipher instance calls the underlying algorithm specific implementation to do the actual encryption/decryption. Before doing the encryption/decryption, a key needs to be created and it will be used to do the encryption/decryption. A sample program for performing all these is :import java.security.Key;import javax.crypto.Cipher;import javax.crypto.KeyGenerator;public class CipherSample { public static void main(String[] ...

30,222 1       JAVA EXAMPLE JAVA SECURITY CIPHER SAMPLE


  Concurrency vs Parallelism

Concurrency and parallelism are two related concepts which deal with executing tasks "simultaneously". From Sun's Multithreaded Programming Guide:Concurrency: A condition that exists when at least two threads are making progress. A more generalized form of parallelism that can include time-slicing as a form of virtual parallelism.Parallelism: A condition that arises when at least two threads are executing simultaneously.These two definitions are too formal to be understood easily. On the Internet, there is one image which demonstrates the difference between these two in an easy way:Much e...

29,270 0       CONCURRENCY THREAD PARALLELISM


  Some tricks and tips for using for range in GoLang

GoLang provides two major ways to loop through elements of array, slice and map. They are for and for range. Many people find that for range is very convenient when don't care about the index of the element. In this post, some tricks and tips would be talked about regarding for range.1. Loop and get pointer of each elementAssume there is a code snippet like below which is to get the pointer of each element in an array and create a new array with the corresponding pointer.arr := [2]int{1, 2}res := []*int{}for _, v := range arr { res = append(res, &v)}//expect: 1 2fmt.Println(*res[0],*res...

29,188 0       FOR RANGE GOLANG FOR LOOP POINTER