use node crypto
avoid extraneous Buffer.concat