user61838: Is is possible that a miner modified a unconfirmed transaction (like changing the output of transaction to the miner himself) and put it into the local block, and after 10 mins the miner luckily solved the PoW, putting the block on the chain and broadcast it to others?
If a transaction was modified and finally linked onto the chain, how others check whether the tx was valid or not? (others only check if PoW answer was right or wrong, not checking tx, am I right?)
And If modified tx was on chain, how do affected people recover their assets from the loss in modified tx (in which output was modified to the miner himself)?
Could they ask to revoke the block or how could they do?
Thanks

user84531: Normally everything in a transaction except scriptSig is cryptographically signed. So nobody can alter your transaction outputs. This is the default case.
But it's indeed possible to craft valid transactions where the outputs can be altered.
Have a look at the configurable signature hash types. Using DER signatures with the SIGHASH_NONE flag (0x00000002) appended in OP_CHECKSIG will produce a valid transaction of which the unlocked funds can be redistributed to any output.

user63981: Every valid bitcoin transaction can only be created if you have the sender's private key, public key, and the receiver's public key. You can check that the transaction is valid without having the private key, but to modify it you would need to recreate the transaction from scratch, which would only be possible if you had the sender's private key.
So no, it is not possible.
Edit: For a good explanation, see https://youtu.be/Lx9zgZCMqXE?t=193

user48884: 
Is is possible that a miner modified a unconfirmed transaction (like changing the output of transaction to the miner himself) and put it into the local block, and after 10 mins the miner luckily solved the PoW, putting the block on the chain and broadcast it to others?

No, because the transaction would be invalid. The vast majority of transactions contain digital signatures which signs the entire transaction. If the transaction is changed, the signatures will become invalid and thus the transaction will be invalid. And if a transaction is invalid, the block containing it is also invalid.

If a transaction was modified and finally linked onto the chain, how others check whether the tx was valid or not? (others only check if PoW answer was right or wrong, not checking tx, am I right?)

No, this is completely incorrect. ALL full nodes verify all transactions in all blocks that they receive (as well as transactions received outside of blocks). Just because a block has a valid proof of work does not mean that the block is valid. It must still build upon a valid block and must only contain valid transactions. Full nodes still verify that transactions contained within a block are valid.
Contrary to popular belief, miners do not say what transactions are valid. Their job is to determine the order of transactions, within certain constraints. It is the job of full nodes to verify transactions, and all miners (or the mining pools) should be running full nodes.

61838: <p>Is is possible that a miner modified a unconfirmed transaction (like changing the output of transaction to the miner himself) and put it into the local block, and after 10 mins the miner luckily solved the PoW, putting the block on the chain and broadcast it to others?</p>

<p>If a transaction was modified and finally linked onto the chain, how others check whether the tx was valid or not? (others only check if PoW answer was right or wrong, not checking tx, am I right?)</p>

<p>And If modified tx was on chain, how do affected people recover their assets from the loss in modified tx (in which output was modified to the miner himself)?
Could they ask to revoke the block or how could they do?</p>

<p>Thanks</p>
 84531: <p>Normally everything in a transaction except <em>scriptSig</em> is cryptographically signed. So nobody can alter your transaction outputs. This is the default case.</p>
<p><strong>But it's indeed possible to craft valid transactions where the outputs can be altered.</strong></p>
<p>Have a look at the configurable <a href="https://developer.bitcoin.org/devguide/transactions.html#signature-hash-types" rel="nofollow noreferrer">signature hash types</a>. Using DER signatures with the <code>SIGHASH_NONE</code> flag (<code>0x00000002</code>) appended in <a href="https://en.bitcoin.it/wiki/OP_CHECKSIG" rel="nofollow noreferrer"><code>OP_CHECKSIG</code></a> will produce a valid transaction of which the unlocked funds can be redistributed to any output.</p>
 63981: <p>Every valid bitcoin transaction can only be created if you have the sender's private key, public key, and the receiver's public key. You can check that the transaction is valid without having the private key, but to modify it you would need to recreate the transaction from scratch, which would only be possible if you had the sender's private key.</p>

<p>So no, it is not possible.</p>

<p>Edit: For a good explanation, see <a href="https://youtu.be/Lx9zgZCMqXE?t=193" rel="noreferrer">https://youtu.be/Lx9zgZCMqXE?t=193</a></p>
 48884: <blockquote>
  <p>Is is possible that a miner modified a unconfirmed transaction (like changing the output of transaction to the miner himself) and put it into the local block, and after 10 mins the miner luckily solved the PoW, putting the block on the chain and broadcast it to others?</p>
</blockquote>

<p>No, because the transaction would be invalid. The vast majority of transactions contain digital signatures which signs the entire transaction. If the transaction is changed, the signatures will become invalid and thus the transaction will be invalid. And if a transaction is invalid, the block containing it is also invalid.</p>

<blockquote>
  <p>If a transaction was modified and finally linked onto the chain, how others check whether the tx was valid or not? (others only check if PoW answer was right or wrong, not checking tx, am I right?)</p>
</blockquote>

<p>No, this is completely incorrect. ALL full nodes verify all transactions in all blocks that they receive (as well as transactions received outside of blocks). Just because a block has a valid proof of work does not mean that the block is valid. It must still build upon a valid block and must only contain valid transactions. Full nodes still verify that transactions contained within a block are valid.</p>

<p>Contrary to popular belief, miners do not say what transactions are valid. Their job is to determine the order of transactions, within certain constraints. It is the job of full nodes to verify transactions, and all miners (or the mining pools) should be running full nodes.</p>
