# validate signature for transaction
```plantuml
@startuml
participant client_service as cls
participant server_service as srv
control signature_process as ctrl
database Database as db
entity system as sys
cls -> srv : send token and send signature
srv -> ctrl : connect to db
ctrl -> db : validate client id
group not found
db -> srv : response unauthorized
end
ctrl -> sys : validate signature
group verification process fails
sys -> ctrl : failed verify signature
ctrl -> srv : response unauthorized
end
sys -> ctrl : verification process success
ctrl <-> sys : validate token
group verification token fails
sys -> ctrl : failed verify token
ctrl -> srv : response unauthorized
end
ctrl -> cls : return response service
@enduml
```