What makes millisatoshi real? In the Lightning Network, it's possible to pay in units a thousandth of a satoshi, a millisatoshi.

But you can't redeem them directly on the main chain when closing a channel, it will be subject to a round error, your value will be 'trimmed' of some millisatoshis.

But how they can exist before that? Is that part of the LN based on trust? The nodes store the number somehow, but what if the decided to change it? How can the digital signatures 'cover' the value, if they sign only the data of a on-chain transaction?
Millisatoshi's are the unit in which channel balances are accounted for. They are a necessary accounting unit, if the aim is to enable very small lightning payments amounts, which represents a protocol design choice. If I wish to send, let's say, 1 satoshi on lightning, the routing fee should necessarily be denominated in a sub-satoshi unit, or else fees could only be 1 or 0 satoshis.

However, there is a difference between accounting for and actually delivering this balance on the Bitcoin blockchain. Two nodes may negotiate a balance in millisatoshi's, but the signed commitment transactions cannot actually deliver this balance, only to the closest Sat value.

Millisatoshis are not captured in HTLC's of commitment transactions, since these are denominated in sat's. So in the case of a unilateral channel close, the delivered balance will differ from the one negotiated between two lightning peers. A collaborative channel close can also not deliver a balance denominated in fractional Sats.

Therefore, millisatoshi's are a real accounting unit, which enables very small lightning payments (and even smaller fee capture along the way), whilst trading off deliverable balance accuracy during channel closing (The rounding can go both ways). 

There is no trust involved, it is clear to each participant independently what the channel balance is (mSat), and how much of the balance is deliverable(Sat) in the Blockchain during any Channel state.