require( checkSignature(_chainId, signedHeader.toBytes(), _rlpUnsignedBlockHeader, parentBlockHash), "Signer is not validator" );in SubmitBlock method. In the checkSignature method, extraDataSig is 0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000. I donot know why extraDataSig is abnormal.
So your steps are slightly jumbled here. Registering a chain requires you to provide a genesis block. What this does is then gives you a base from which you will start submitting consequent blocks by referencing the previous one. This is how the submission of blocks works to ensure that you are submitting something correct (by checking against the previous known block for validator sets and the valid signature(s) against the block being submitted).
In this case you've registered the chain by using block 513 as the genesis but also attempting to submit the same block 513. If you submit block 513 as your genesis, you will need to submit block 514 onwards. Thus in your case, if you want to use block 513 (which contains your transaction with the transaction you want to prove and use for interoperation) you must register block 512 as your genesis with
RegisterChain, then submit block 513 with