The hash of the transaction already serves as ID_2 as far as I remember.
It includes signature bytes.
No. Here is the method getHash from Transaction.java (version 0.6.2):
String getHash()
{
if (this.hash == null)
{
byte[] arrayOfByte = getBytes();
for (int i = 64; i < 128; i++) {
arrayOfByte = 0;
}
this.hash = Convert.convert(Crypto.sha256().digest(arrayOfByte));
}
return this.hash;
}
It's hash, not id.
Edit: It's another hash.