add internal key operations