md5 es un algoritmo de encriptación estandar y nunca va a tener una llave para quwe cumpla su cometido.
md5 es unilateral, quiere decir que el algoritmo encripta una palabra, pero no hay forma de devolver el resultado original con base en la cadena cifrada.
Cita: $key = "mi_key";
$valor= md5($key,$valor)
Esto que dices, no es posible. En PHP, Visual studio, Oracle, postgresql, mysql tienen el mismo principio y los mismos resultados.
variable=md5(cadena); //Donde variable es la cadena cifrada
saludos