going to have to add a better counter/nonce protocol