Si entendí bien el problema, la solución sería algo como esto
Código PHP:
<?php
function firma($cadena, $llave){
for($i = 0; $i < strlen($cadena); $i++){
$sum += $cadena[$i] * $llave[$i];
}
$rest = $sum % 10;
if($rest == 0){
$valor = 0;
}else{
$valor = 10 - $rest;
}
return $valor;
}
y una prueba
Código PHP:
$cadena = '2007120126';
$llave = '1313131313';
echo firma($cadena, $llave);
?>
Espero te sirva