Capacity Achieving Linear Codes with Random Binary Sparse Generating Matrices